English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
java.util.functionIl pacchettoPredicateL'interfaccia può essere utilizzata come obiettivo dell'espressione lambda. Il metodo di test di questa interfaccia accetta un valore e lo verifica con il valore attuale dell'oggetto predicato. Se ci sono corrispondenze, questo metodo restituisce true, altrimenti restituisce false.
java.util.regex.PatternLa classeasPredicate()Il metodo restituisce un oggetto Predicate che può abbinare una stringa con un'espressione regolare, utilizzando la quale è possibile compilare l'oggetto Pattern corrente.
import java.util.Scanner; import java.util.function.Predicate; import java.util.regex.Pattern; public class AsPredicateExample { public static void main( String args[] ) { //Lettura del valore della stringa Scanner sc = new Scanner(System.in); System.out.println("Inserisci stringa di input"); String input = sc.nextLine(); //Espressione regolare per trovare numeri String regex = "[t]"; //Compilando l'espressione regolare Pattern pattern = Pattern.compile(regex, Pattern.CASE_INSENSITIVE); //Convertendo l'espressione regolare in predicato Predicate<String> predicate = pattern.asPredicate(); //Test della predicazione con la stringa di input boolean result = predicate.test(input); if(result) { System.out.println("Corrispondenza trovata"); } else { System.out.print("Corrispondenza non trovata"); } } }
Risultato di output
Inserisci stringa di input w3codebox Numero di corrispondenze: 3
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")); //Espressione regolare per trovare numeri String regex = "[J]"; //Compilando l'espressione regolare Pattern pattern = Pattern.compile(regex); //Convertendo l'espressione regolare in predicato Predicate<String> predicate = pattern.asPredicate(); list.forEach(n -> { if (predicate.test(n)) System.out.println("Match trovato " + n); }); } }
Risultato di output
Match trovato Java Match trovato JavaFX Match trovato JavaScript