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

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

تعريفها

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



بناؤها

public String next(Pattern pattern)
public String next(Pattern pattern)


باراميترات

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



قيمة الإرجاع

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



أخطاء محتملة

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


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

المثال الأول

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);
// سيتم عرضها imple إذا كانت تبدأ بأي حرف,يليه input هنا سيتم فحص أول كلمة موجودة في الكائن
System.out.println(input.next(Pattern.compile(".imple")));
// إذا كانت تتألف من 4 أحرف سيتم عرضها input هنا سيتم فحص ثاني كلمة موجودة في الكائن
System.out.println(input.next(Pattern.compile("....")));
}
}
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); // سيتم عرضها imple إذا كانت تبدأ بأي حرف,يليه input هنا سيتم فحص أول كلمة موجودة في الكائن System.out.println(input.next(Pattern.compile(".imple"))); // إذا كانت تتألف من 4 أحرف سيتم عرضها input هنا سيتم فحص ثاني كلمة موجودة في الكائن System.out.println(input.next(Pattern.compile("...."))); } }

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

Simple
math
Simple math

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

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

Main.java
import java.util.Scanner; // Scanner هنا قمنا باستدعاء الكلاس
import java.util.regex.Pattern; // Pattern هنا قمنا باستدعاء الكلاس
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in); // input إسمه Scanner هنا قمنا بإنشاء كائن من الكلاس
String fname; // سنستخدم هذا المتغير لحفظ الإسم الذي سيدخله المستخدم
String lname; // سنستخدم هذا المتغير لحفظ إسم العائلة الذي سيدخله المستخدم
System.out.print("Enter first name: "); // هنا طلبنا من المستخدم إدخال إسمه
fname = input.next(Pattern.compile("...*")); // بشرط أن تتألف من 3 حروف على الأقل fname هنا قمنا بإستقبال الكلمة التي سيدخلها المستخدم و تخزينها في المتغير
System.out.print("Enter last name: "); // هنا طلبنا من المستخدم إدخال إسم عائلته
lname = input.next(Pattern.compile("...")); // بشرط أن تتألف من 3 حروف فقط lname هنا قمنا بإستقبال الكلمة التي سيدخلها المستخدم و تخزينها في المتغير
// في الأخير سيتم عرض جميع المعلومات التي أدخلها المستخدم
System.out.println("\n----------- User Info ------------");
System.out.println("First Name: " +fname);
System.out.println("Last Name: " +lname);
}
}
import java.util.Scanner; // Scanner هنا قمنا باستدعاء الكلاس import java.util.regex.Pattern; // Pattern هنا قمنا باستدعاء الكلاس public class Main { public static void main(String[] args) { Scanner input = new Scanner(System.in); // input إسمه Scanner هنا قمنا بإنشاء كائن من الكلاس String fname; // سنستخدم هذا المتغير لحفظ الإسم الذي سيدخله المستخدم String lname; // سنستخدم هذا المتغير لحفظ إسم العائلة الذي سيدخله المستخدم System.out.print("Enter first name: "); // هنا طلبنا من المستخدم إدخال إسمه fname = input.next(Pattern.compile("...*")); // بشرط أن تتألف من 3 حروف على الأقل fname هنا قمنا بإستقبال الكلمة التي سيدخلها المستخدم و تخزينها في المتغير System.out.print("Enter last name: "); // هنا طلبنا من المستخدم إدخال إسم عائلته lname = input.next(Pattern.compile("...")); // بشرط أن تتألف من 3 حروف فقط lname هنا قمنا بإستقبال الكلمة التي سيدخلها المستخدم و تخزينها في المتغير // في الأخير سيتم عرض جميع المعلومات التي أدخلها المستخدم System.out.println("\n----------- User Info ------------"); System.out.println("First Name: " +fname); System.out.println("Last Name: " +lname); } }

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

Enter first name: Mohamad
Enter last name: Ali

----------- User Info ------------
First Name: Mohamad
Last Name: Ali