List操作
来源:互联网 发布:vnc server使用的端口 编辑:程序博客网 时间:2024/06/06 19:16
大部分都是用lambda实现的,在jdk为1.8时才能生效
排序
public class Person { private String name; private int age; public Person(String name, int age) { setAge(age); setName(name); } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; }}
import java.util.ArrayList;import java.util.List;public class ListSort{ public static void main(String[] args) { Person p1 = new Person("Jack", 12); Person p2 = new Person("Nick", 11); Person p3 = new Person("Bob", 14); Person p4 = new Person("Lucy", 18); List<Person> sortList = new ArrayList<Person>(); sortList.add(p1); sortList.add(p2); sortList.add(p3); sortList.add(p4); //顺序 sortList.sort((a, b) -> a.getAge() - b.getAge()); //倒序 //sortList.sort((a, b) -> b.getAge() - a.getAge()); sortList.forEach(p -> System.out.print(p.getName() + ":" + p.getAge() + '\n')); }}
打印结果:
Nick:11Jack:12Bob:14Lucy:18
筛选
import java.util.ArrayList;import java.util.List;import java.util.stream.Collectors;public class ListFilter { public static void main(String[] args) { Person p1 = new Person("Jack", 12); Person p2 = new Person("Nick", 11); Person p3 = new Person("Bob", 14); Person p4 = new Person("Lucy", 18); List<Person> filterList = new ArrayList<Person>(); filterList.add(p1); filterList.add(p2); filterList.add(p3); filterList.add(p4); List<Person> ageFilter = filterList.stream().filter(p -> p.getAge() > 13).collect(Collectors.toList()); List<Person> nameFilter = filterList.stream().filter(p -> p.getName().equals("Jack")).collect(Collectors.toList()); System.out.println("ageFilter:"); ageFilter.forEach(p -> System.out.print(p.getName() + ":" + p.getAge() + '\n')); System.out.println("nameFilter:"); nameFilter.forEach(p -> System.out.print(p.getName() + ":" + p.getAge() + '\n')); }}
输出:
ageFilter:Bob:14Lucy:18nameFilter:Jack:12
截取
import java.util.ArrayList;import java.util.List;public class ListSubList { public static void main(String[] args) { Person p1 = new Person("Jack", 12); Person p2 = new Person("Nick", 11); Person p3 = new Person("Bob", 14); Person p4 = new Person("Lucy", 18); List<Person> subList = new ArrayList<Person>(); subList.add(p1); subList.add(p2); subList.add(p3); subList.add(p4); //subList(indexStart, indexEnd);indexStart开始位置,包含。indexEnd结束位置,不包含 subList = subList.subList(1, 4); subList.forEach(p -> System.out.print(p.getName() + ":" + p.getAge() + '\n')); }}
输出
Nick:11Bob:14Lucy:18
1 0
- list操作
- list操作
- list操作
- list操作
- list操作
- list操作
- List操作
- List操作
- Spring RedisTemplate操作-List操作
- list box 操作
- list基本操作
- 用ajaxPro操作List
- java.util.list操作
- Python 列表(list)操作
- 对List的操作
- List的特殊操作
- list添加删除操作
- python list操作
- java学习日记_91:IO流之File文件操作
- 深入浅出Java之Serializable接口
- LeetCode 448.Find All Number Disappeared in an Array
- 关于Druid
- 欢迎来到git的世界(一)
- List操作
- 实验9 问题 A: 编写函数:三个数的最大最小值 (Append Code)
- 设置设计器初始属性
- 图片的格式与压缩
- Kubernetes系统架构简介
- Ethernet frame
- NetRiver - IPv4协议收发实验
- 后台基础--Tomcat启动失败
- Spark自定义排序