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

Javaالدالة hasNext(Pattern pattern) الموجودة في الكلاس Scanner في جافا

تعريفها

ترجع true في حال كان يوجد نص تالي في كائن الـ Scanner قيمته تساوي قيمة نص الـ pattern التي نمررها لها عند إستدعائها.



بناؤها

public boolean hasNext(Pattern pattern)
public boolean hasNext(Pattern pattern)


باراميترات

pattern: هو كائن نوعه Pattern يمثل النص الذي سيتم البحث عنه في كائن الـ Scanner.



قيمة الإرجاع

ترجع true في حال كان يوجد نص تالي في كائن الـ Scanner قيمته تساوي قيمة نص الـ pattern التي نمررها لها عند إستدعائها.



أخطاء محتملة

IllegalStateException: في حال كان كائن الـ Scanner مغلقاً.



في المثال التالي أدخلنا سطر من البيانات في كونستركتور كائن الـ Scanner.
بعدها قمنا باستدعاء الدالة hasNext() ثلاث مرات, و كل مرة حاولنا البحث عن كلمة مختلفة.

مثال

Main.java
import java.util.Scanner; // Scanner هنا قمنا باستدعاء الكلاس
import java.util.regex.Pattern; // Pattern هنا قمنا باستدعاء الكلاس
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);
// mple لأنه تم إيجاد كلمة تبدأ بحرفين يليهما true هنا سترجع hasNext() الدالة
System.out.println("hasNext()? " + input.hasNext(Pattern.compile("..mple")));
// next() بواسطة دالة الإدخال input هنا قمنا بعرض الكلمة التالية الموجودة في الكائن
System.out.println(input.next());
// يليه حرف at لأنه تم إيجاد كلمة تبدأ بحرف يليه true هنا سترجع hasNext() الدالة
System.out.println("hasNext()? " + input.hasNext(Pattern.compile(".at.")));
// next() بواسطة دالة الإدخال input هنا قمنا بعرض الكلمة التالية الموجودة في الكائن
System.out.println(input.next());
// java لأنه لم يجد كلمة تبدأ بحرف يليه false هنا سترجع hasNext() الدالة
System.out.println("hasNext()? " + input.hasNext(Pattern.compile(".java")));
// nextLine() بواسطة دالة الإدخال input هنا قمنا بعرض باقي البيانات الموجودة في نفس السطر في الكائن
System.out.println(input.nextLine());
}
}
import java.util.Scanner; // Scanner هنا قمنا باستدعاء الكلاس import java.util.regex.Pattern; // Pattern هنا قمنا باستدعاء الكلاس 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); // mple لأنه تم إيجاد كلمة تبدأ بحرفين يليهما true هنا سترجع hasNext() الدالة System.out.println("hasNext()? " + input.hasNext(Pattern.compile("..mple"))); // next() بواسطة دالة الإدخال input هنا قمنا بعرض الكلمة التالية الموجودة في الكائن System.out.println(input.next()); // يليه حرف at لأنه تم إيجاد كلمة تبدأ بحرف يليه true هنا سترجع hasNext() الدالة System.out.println("hasNext()? " + input.hasNext(Pattern.compile(".at."))); // next() بواسطة دالة الإدخال input هنا قمنا بعرض الكلمة التالية الموجودة في الكائن System.out.println(input.next()); // java لأنه لم يجد كلمة تبدأ بحرف يليه false هنا سترجع hasNext() الدالة System.out.println("hasNext()? " + input.hasNext(Pattern.compile(".java"))); // nextLine() بواسطة دالة الإدخال input هنا قمنا بعرض باقي البيانات الموجودة في نفس السطر في الكائن System.out.println(input.nextLine()); } }

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

hasNext()? true
Simple
hasNext()? true
math
hasNext()? false
operation: 2 + 3 = 5
hasNext()? true Simple hasNext()? true math hasNext()? false operation: 2 + 3 = 5

الدورات

أدوات مساعدة

أقسام الموقع

دورات
مقالات كتب مشاريع أسئلة