Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

รูปแบบเมธอด asPredicate() ใน Java พร้อมตัวอย่าง


ภาคแสดง อินเทอร์เฟซของ java.util.function แพ็คเกจสามารถใช้เป็นเป้าหมายสำหรับนิพจน์แลมบ์ดา วิธีการทดสอบของอินเทอร์เฟซนี้ยอมรับค่าโฆษณาตรวจสอบด้วยค่าปัจจุบันของวัตถุเพรดิเคต เมธอดนี้คืนค่า true ในกรณีที่มีการจับคู่ มิฉะนั้นจะคืนค่าเป็น false

asPredicate() วิธีการของ java.util.regex.Pattern class ส่งคืนวัตถุ Predicate ซึ่งสามารถจับคู่สตริงกับนิพจน์ทั่วไปโดยใช้วัตถุ Pattern ปัจจุบันที่คอมไพล์แล้ว

ตัวอย่างที่ 1

import java.util.Scanner;
import java.util.function.Predicate;
import java.util.regex.Pattern;
public class AsPredicateExample {
   public static void main( String args[] ) {
      //Reading string value
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter input string");
      String input = sc.nextLine();
      //Regular expression to find digits
      String regex = "[t]";
      //Compiling the regular expression
      Pattern pattern = Pattern.compile(regex, Pattern.CASE_INSENSITIVE);
      //Converting the regular expression to predicate
      Predicate<String> predicate = pattern.asPredicate();
      //Testing the predicate with the input string
      boolean result = predicate.test(input);
      if(result) {
         System.out.println("Match found");
      } else {
         System.out.print("Match not found");
      }
   }
}

ผลลัพธ์

Enter input string
Tutorialspoint
Number of matches: 3

ตัวอย่างที่ 2

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Scanner;
import java.util.function.Predicate;
import java.util.regex.Pattern;
public class AsPredicateExample {
   public static void main( String args[] ) {
      ArrayList<String> list = new ArrayList<String>();
      list.addAll(Arrays.asList("Java", "JavaFX", "Hbase", "JavaScript"));
      //Regular expression to find digits
      String regex = "[J]";
      //Compiling the regular expression
      Pattern pattern = Pattern.compile(regex);
      //Converting the regular expression to predicate
      Predicate<String> predicate = pattern.asPredicate();
      list.forEach(n -> { if (predicate.test(n)) System.out.println("Match found "+n); });
   }
}

ผลลัพธ์

Match found Java
Match found JavaFX
Match found JavaScript