🍅 Java学习路线:搬砖工逆袭Java架构师
🍅 简介:Java领域优质创作者🏆、CSDN哪吒公众号作者✌ 、Java架构师奋斗者💪
🍅 扫描主页左侧二维码,加入群聊,一起学习、一起进步
🍅 欢迎点赞 👍 收藏 ⭐留言 📝
一、一段代码引起的思考
// ?主要用于变量上,T主要用于类或方法上
private static <T> Predicate<T> getDistinct(Function<? super T, ?> param) {
Map<Object, Boolean> map = new HashMap<>();
//hash中不存在这个key,则返回null,如果存在返回true
Predicate<T> ret = t -> map.putIfAbsent(param.apply(t), Boolean.TRUE) == null;
return ret;
}
private static void test01() {
List<User> list = new ArrayList<User>();
list.add(new User("zs", 18));
list.add(new User("ls", 28));
list.add(new User("ww",