Javaالدالة nextInt()
الموجودة في الكلاس Scanner
في جافا
تعريفها
ترجع القيمة التالية التي تم إدخالها في كائن الـ Scanner
في حال كانت هذه القيمة تعتبر من النوع int
.
بناؤها
public int nextInt()
باراميترات
ليس لها باراميتر.
قيمة الإرجاع
ترجع القيمة التالية التي تم إدخالها في كائن الـ Scanner
في حال كانت هذه القيمة تعتبر من النوع int
.
أخطاء محتملة
- IllegalStateException: في حال كان كائن الـ
Scanner
مغلقاً. - InputMismatchException: في حال كانت القيمة التالية ليست من النوع
int
و أيضاُ في حال كانت قيمتها العددية أكبر أو أصغر من القيمة الممكن تخزينها فيها. - NoSuchElementException: في حال قمت باستدعائها بعد أن تم إرجاع جميع القيم الموجودة في كائن الـ
Scanner
.
في المثال التالي أدخلنا سطر من البيانات في كونستركتور كائن الـ Scanner
.
بعدها قمنا بإنشاء حلقة while
تمر على كل كلمة موجودة في كائن الـ Scanner
ثم تعرضها بواسطة الدالة next()
.
ستستمر هذه الحلقة في تكرار نفسها طالما أن الدالة hasNext()
ترجع true
.
إذا كانت الكلمة من النوع int
سيكتب بجانبها (this is a int value)
.
المثال الأول
import java.util.Scanner; // Scanner هنا قمنا باستدعاء الكلاس public class Main { public static void main(String[] args) { // Scanner هنا قمنا بإنشاء نص و الذي سندخله في كائن الـ String s = "Simple math operation: 2 + 3 = 5"; // s و أدخلنا فيه مباشرةً النص الموجود في المتغير ,input إسمه Scanner هنا قمنا بإنشاء كائن من الكلاس Scanner input = new Scanner(s); // ليس فارغاً, قم بتنفيذ الأوامر الموجودة داخل الحلقة input أي طالما أن الكائن ,true ترجع hasNext() هنا قلنا أنه طالما أن الدالة while(input.hasNext()) { if(input.hasNextInt()) System.out.println(input.nextInt() + " (this is a int value)"); else System.out.println(input.next()); } } }
سنحصل على النتيجة التالية عند التشغيل.
Simple math operation: 2 (this is a int value) + 3 (this is a int value) = 5 (this is a int value)
في المثال التالي سيطلب البرنامج من المستخدم إدخال عدد صحيح ( يمثل id ), بعدها سيقوم بعرضه.
المثال الثاني
import java.util.Scanner; // Scanner هنا قمنا باستدعاء الكلاس public class Main { public static void main(String[] args) { Scanner input = new Scanner(System.in); // input إسمه Scanner هنا قمنا بإنشاء كائن من الكلاس int id; // الذي سيدخله المستخدم id سنستخدم هذا المتغير لحفظ رقم الـ System.out.print("Enter your id: "); // الخاص فيه id هنا طلبنا من المستخدم إدخال رقم الـ id = input.nextInt(); // id هنا قمنا بإستقبال العدد الذي سيدخله المستخدم و تخزينه في المتغير // الذي قام بإدخاله id في الأخير سيتم عرض رقم الـ System.out.println("\n----------- User Info ------------"); System.out.println("User id: " +id); } }
سنحصل على النتيجة التالية عند التشغيل إذا قمنا بإدخال نفس المعلومات التي أدخلناها عند تشغيل البرنامج.
قمنا بتعليم البيانات التي إنتظرنا البرنامج لإدخالها من لوحة المفاتيح باللون الأصفر.
----------- User Info ------------
User id: 125