回首一年(list对象去重)

好久不见,回望自己最近的几个月,确实写的东西少了很多,导致归档是七月我推荐自己app的一篇博客。

既然重回这路上,很希望自己能坚持下去。坚持写下去,可是一个聪明的人从来不把话说太满。或许有一天我转行或者其他,就真的被动的坚持不了。
我叫它 “无奈”

还在回归副题。。。
先把我今天发现的问题记录一下

public static void main(String[] args) {
    List<User> users=new ArrayList<>();
    List<String> stringList=new ArrayList<>();
    stringList.add("张三");
    stringList.add("张三");
    users.add(new User("张三",18));
    users.add(new User("张三",18));
    System.out.println(stringList.size());
    users=new ArrayList<User>(new HashSet<User>(users));
    stringList=new ArrayList<String>(new HashSet<String>(stringList));
    System.out.println(stringList.size());
}

关于基础数据类型的去重可以用我上面这种,但是关于对象却不行,还有什么年代了,别用for循环了,我这么菜都知道这种去重或者二分查找了。不在是大一初学者练习自己的逻辑能力去不断的暴力破解,往往最直接的暴力破解也是系统最需要时间的去处理的。

比较合理的方法的有


	List<User> userListNoDupAndSort = removeDuplicateUser(userList);
private static ArrayList<User> removeDuplicateUser (List < User > users) {
	//方法一按照List中的某个String类型的属性进行去重
    Set<User> set = new TreeSet<User>(new Comparator<User>() {
        @Override
        public int compare(User o1, User o2) {
            //字符串,则按照asicc码升序排列
            return o1.getUserId().compareTo(o2.getUserId());
        }
    });
    set.addAll(users);
    return new ArrayList<User>(set);
    //方法二jdk1.8使用
    return users.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -> newTreeSet < > (Comparator.comparing(User::getUserId))), ArrayList::new))
}

倘若你此时有个好心情,还记得自己以前想要的。而且你现在还朝着它前进。
我叫它 “目标”

我也有
1.微信小程序初级开发(只添加了书签)
2.小游戏初级开发(做过一个)
3.做一个属于自己的app(完成)
4.不找家人要钱(完成)
5.锻炼身体(跑步20天)
我发现我当时真的有点小聪明,还行,至少2018年度总结这些都没写死
在这里插入图片描述

不然说句实话,我真慌了
可是时间都快过完了,慌能有什么用
所以,这些我会去完成,也许不能全部完成,但是我希望,我能像我现在写这篇博客一样轻松,自然,无感知的去完成和实现它们;
我叫它 “无中生有”

你可以嘲讽我的无或生有,没关系,知识面广的人,从不会轻易评价他人。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值