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

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

تعريفها

ترجع true في حال كان يوجد نص تالي في كائن الـ Scanner قيمته تساوي قيمة نص الـ 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());
 
    }
 
}

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

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