java8的lambda表达式对List集合常规处理

//遍历列表
List<Integer> lists = new ArrayList<>();
lists.forEach(element ->{
  if(element % 2==0){
  }
});

//删除元素
List<String> lists = new ArrayList<>();
lists.removeIf(ele -> ele.getCidRid() == "1");

//排序
lists.sort((o1,o2) -> o1.getRid() - o2.getRid());
lists.sort((o1,o2) -> o1.getRid().compareTo(o2.getRid()));

//过滤
disList.stream().filter((ele) -> ele.getCidRid() == "1");

//去重
List<Integer> lists = new ArrayList<>();
lists.stream().distinct().collect(Collectors.toList());

//是否匹配所有元素,返回值为boolean类型
disList.stream().allMatch(ele -> ele.getCidRid() == "1");

//拼接
List<DiseaseInfo> disList = new ArrayList<>();
String a = disList.stream().map(ele -> ele.getCidRid()).reduce((m,b) -> m +","+b).toString();
String a = list.stream().map(DiseaseInfo :: getCidRid).collect(Collectors.joining(","));

//获取所有的用户ID取出来
List<User> users = new ArrayList<>();
List<String> userIds = users.stream().map(u -> u.getId()).collect(Collectors.toList());

//获取所有的用户ID并且去重
List<User> users = new ArrayList<>();
List<String> userIds = users.stream().map(u -> u.getId()).distinct().collect(Collectors.toList());

//List<User>放到HashMap里,key为用户ID,value为该User
List<User> users = new ArrayList<>();
Map<String, User> userMap = users.stream().collect(Collectors.toMap(User :: getId, u -> u));

//List<User>放到HashMap里,key为用户ID,value为姓名
List<User> users = new ArrayList<>();
Map<String, String> userMap = users.stream().collect(Collectors.toMap(User :: getId, u -> u.getName()));

//List<User>放到HashMap里,key为用户ID,value为该User,并且id去重
List<User> users = new ArrayList<>();
Map<String, User> userMap = users.stream().collect(Collectors.toMap(User :: getId, u -> u, (oldV, newV) -> newV));

//求和
list.stream.mapToInt(User::getAge).sum();

//最大以及对应的对象
list.stream.mapToInt(User::getAge).max();
User obj = list.stream().max(comparator).get();

//最小以及对应的对象
list.stream.mapToInt(User::getAge).min();
User obj = list.stream().min(comparator).get();

//平均
list.stream.mapToInt(User::getAge).average();

//list转map
Map<Integer,list> map = list.stream().collect(Collectors.groupingBy(User::getId));
Map<String,User> map = list.stream().collect(Collectors.toMap(User::getId,u->u));
Map<Integer,String> map = list.stream().collect(Collectors.toMap(User::getId,u->u.getName()));

//字符串转list
List list = Arrays.asList(str.split(",")).map(string -> String.valueOf(string)).collect(Collectors.toList);

//list分片,输出结果[[1,2,3],[4,5,6],[7,8]]
List<Integer> numList = Lists.newArrayList(1, 2, 3, 4, 5, 6, 7, 8);
List<List<Integer>> partList = Lists.partition(numList, 3);

//限制结果集个数
disList.stream().limit(3);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值