Programming Basics SQL HTML CSS JavaScript React Python C++ Java JavaFX Swing Problem Solving English English Conversations Computer Fundamentals Linux Learn Typing

Javaالدالة nextByte() الموجودة في الكلاس Scanner في جافا

تعريفها

ترجع القيمة التالية التي تم إدخالها في كائن الـ Scanner في حال كانت هذه القيمة تعتبر من النوع byte.



بناؤها

public byte nextByte() 


باراميترات

ليس لها باراميتر.



قيمة الإرجاع

ترجع القيمة التالية التي تم إدخالها في كائن الـ Scanner في حال كانت من النوع byte. و ترجعها كـ byte.



أخطاء محتملة

  • IllegalStateException: في حال كان كائن الـ Scanner مغلقاً.
  • InputMismatchException: في حال كانت القيمة التالية ليست من النوع byte و أيضاُ في حال كانت قيمتها العددية أكبر أو أصغر من القيمة الممكن تخزينها فيها.
  • NoSuchElementException: في حال قمت باستدعائها بعد أن تم إرجاع جميع القيم الموجودة في كائن الـ Scanner.


في المثال التالي أدخلنا سطر من البيانات في كونستركتور كائن الـ Scanner.
بعدها قمنا بإنشاء حلقة while تمر على كل كلمة موجودة في كائن الـ Scanner ثم تعرضها بواسطة الدالة next().
ستستمر هذه الحلقة في تكرار نفسها طالما أن الدالة hasNext() ترجع true.
إذا كانت الكلمة من النوع byte سيكتب بجانبها (this is a byte value).

المثال الأول

Main.java
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.hasNextByte())
                System.out.println(input.nextByte() + " (this is a byte value)");
            else
                System.out.println(input.next());
        }
 
    }
 
}

سنحصل على النتيجة التالية عند التشغيل.

Simple
math
operation:
2 (this is a byte value)
+
3 (this is a byte value)
=
5 (this is a byte value) 

في المثال التالي سيطلب البرنامج من المستخدم إدخال عدد صحيح يمثل عدد سنوات الخبرة التي لديه, بعدها سيقوم بعرضه.

المثال الثاني

Main.java
import java.util.Scanner;                                        // Scanner هنا قمنا باستدعاء الكلاس
 
public class Main {
 
    public static void main(String[] args) {
 
        Scanner input = new Scanner(System.in);                  // input إسمه Scanner هنا قمنا بإنشاء كائن من الكلاس
 
        byte year;                                               // سنستخدم هذا المتغير لحفظ عدد سنوات الخبرة التي سيدخلها المستخدم
 
        System.out.print("Enter your years of experience: ");    // هنا طلبنا من المستخدم إدخال رقم يمثل عدد سنوات الخبرة التي لديه
        year = input.nextByte();                                 // year هنا قمنا بإستقبال العدد الذي سيدخله المستخدم و تخزينه في المتغير
 
        // في الأخير سيتم عرض عدد سنوات الخبرة التي لدى المتسخدم
        System.out.println("\n----------- User Info ------------");
        System.out.println("User years experience: " +year+ " years");
 
    }
 
}

سنحصل على النتيجة التالية عند التشغيل إذا قمنا بإدخال نفس المعلومات التي أدخلناها عند تشغيل البرنامج.
قمنا بتعليم البيانات التي إنتظرنا البرنامج لإدخالها من لوحة المفاتيح باللون الأصفر.

Enter your years of experience: 3

----------- User Info ------------
User years experience: 3 years