English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
java.util.functionпакетаPredicateИнтерфейс может использоваться в качестве цели лямбда-выражений. Метод тестирования этого интерфейса принимает значение и проверяет его с помощью текущего значения объекта предиката. Если есть совпадение, метод возвращает true,否则 false.
java.util.regex.PatternклассаasPredicate()Метод возвращает объект Predicate, который может соответствовать строке с регулярным выражением, используя которое можно скомпилировать текущий объект Pattern.
import java.util.Scanner; import java.util.function.Predicate; import java.util.regex.Pattern; public class AsPredicateExample { public static void main( String args[] ) { //Чтение строкового значения Scanner sc = new Scanner(System.in); System.out.println("Введите строку ввода"); String input = sc.nextLine(); //Регулярное выражение для поиска цифр String regex = "[t]"; //Компиляция регулярного выражения Pattern pattern = Pattern.compile(regex, Pattern.CASE_INSENSITIVE); //Преобразование регулярного выражения в предикат Predicate<String> predicate = pattern.asPredicate(); //Тестирование предиката с строкой ввода boolean result = predicate.test(input); if(result) { System.out.println("Найдено совпадение"); } else { System.out.print("Найдено совпадение"); } } }
Результат вывода
Введите строку ввода w3codebox Количество совпадений: 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")); //Регулярное выражение для поиска цифр String regex = "[J]"; //Компиляция регулярного выражения Pattern pattern = Pattern.compile(regex); //Преобразование регулярного выражения в предикат Predicate<String> predicate = pattern.asPredicate(); list.forEach(n -> { if (predicate.test(n)) System.out.println("Найдено совпадение " + n); }); } }
Результат вывода
Найдено совпадение Java Найдено совпадение JavaFX Найдено совпадение JavaScript