Я использую Pattern.compile("XXX").asPredicate()
для создания множества предикатов для обработки некоторых данных. Глядя на его реализацию, это только егоЧто такое HashCode для встроенных предикатов?
public Predicate<String> asPredicate() {
return s -> matcher(s).find();
}
Что такое хэш-код для встроенного сгенерированного предиката? Согласно https://docs.oracle.com/javase/8/docs/api/java/util/function/Predicate.html, он не указывает хэш-код ... Сравнение значений в моем приложении кажется, что это просто новый хэш-код каждый раз, даже для одного и того же выражения. Поэтому мне просто интересно, как он получает свой хэш-код в целом.
Почему вы ищете hashcode? Когда вы сравниваете «String» (упомянутый в вашем примере), вы должны использовать метод isEqual для сравнения строк? – veysiertekin
На данный момент только для знания. Первоначально мне было интересно, как я буду кэшировать результаты фильтра, если бы я обрабатывал большие списки со сложными предикатами. Я подумал, может быть, HashMap с набором статических предикатов где-то ... В любом случае, это не происходит по той дороге. –
Он просто использует реализацию Object.hashCode(). –