Javaالدالة nextFloat()
الموجودة في الكلاس Scanner
في جافا
تعريفها
ترجع القيمة التالية التي تم إدخالها في كائن الـ Scanner
في حال كانت هذه القيمة تعتبر من النوع float
.
بناؤها
public float nextFloat()
باراميترات
ليس لها باراميتر.
قيمة الإرجاع
ترجع القيمة التالية التي تم إدخالها في كائن الـ Scanner
في حال كانت هذه القيمة تعتبر من النوع float
.
أخطاء محتملة
- IllegalStateException: في حال كان كائن الـ
Scanner
مغلقاً. - InputMismatchException: في حال كانت القيمة التالية ليست من النوع
float
و أيضاُ في حال كانت قيمتها العددية أكبر أو أصغر من القيمة الممكن تخزينها فيها. - NoSuchElementException: في حال قمت باستدعائها بعد أن تم إرجاع جميع القيم الموجودة في كائن الـ
Scanner
.
في المثال التالي أدخلنا سطر من البيانات في كونستركتور كائن الـ Scanner
.
بعدها قمنا بإنشاء حلقة while
تمر على كل كلمة موجودة في كائن الـ Scanner
ثم تعرضها بواسطة الدالة next()
.
ستستمر هذه الحلقة في تكرار نفسها طالما أن الدالة hasNext()
ترجع true
.
إذا كانت الكلمة من النوع float
سيكتب بجانبها (this is a float 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.hasNextFloat()) System.out.println(input.nextFloat() + " (this is a float value)"); else System.out.println(input.next()); } } }
سنحصل على النتيجة التالية عند التشغيل.
Simple math operation: 2.0 (this is a float value) + 3.0 (this is a float value) = 5.0 (this is a float value)
في المثال التالي سيطلب البرنامج من المستخدم إدخال متوسط راتبه الشهري, بعدها سيقوم بعرضه.
المثال الثاني
import java.util.Scanner; // Scanner هنا قمنا باستدعاء الكلاس public class Main { public static void main(String[] args) { Scanner input = new Scanner(System.in); // input إسمه Scanner هنا قمنا بإنشاء كائن من الكلاس float salary; // سنستخدم هذا المتغير لحفظ قيمة الراتب الشهري التي سيدخلها المستخدم System.out.print("Enter your salary: "); // هنا طلبنا من المستخدم إدخال راتبه الشهري salary = input.nextFloat(); // salary هنا قمنا بإستقبال العدد الذي سيدخله المستخدم و تخزينه في المتغير // في الأخير سيتم عرض راتب المستخدم System.out.println("\n----------- User Info ------------"); System.out.println("User salary: " +salary+ "$" ); } }
سنحصل على النتيجة التالية عند التشغيل إذا قمنا بإدخال نفس المعلومات التي أدخلناها عند تشغيل البرنامج.
قمنا بتعليم البيانات التي إنتظرنا البرنامج لإدخالها من لوحة المفاتيح باللون الأصفر.
----------- User Info ------------
User salary: 850.55$