实体类:
package Com.ZQQQ.pojo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@NoArgsConstructor
@AllArgsConstructor
public class userInfo {
private int id;
private String name;
private String sex;
private int age;
}
测试代码:
package Com.ZQQQ.CreateObjectClass;
import Com.ZQQQ.pojo.Person;
import Com.ZQQQ.pojo.userInfo;
import com.jcraft.jsch.UserInfo;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class TestLambda {
public static void main(String[] args) {
List<userInfo> userInfoList = new ArrayList<>();
userInfoList.add(new userInfo(1, "捡田螺的小男孩", "男", 15));
userInfoList.add(new userInfo(2, "程序员", "男", 18));
userInfoList.add(new userInfo(3, "吃蔬菜ing", "男", 36));
Map<Integer, userInfo> infoMap = userInfoList.stream()
.collect(Collectors.toMap(userInfo::getId, userInfo -> userInfo, (k1, k2) -> k1));
infoMap.values().forEach(a -> System.out.println(a.getName()));
System.out.println("--------------------------------------------");
List<userInfo> collect = userInfoList.stream().filter(userInfo -> userInfo.getAge() > 18).collect(Collectors.toList());
collect.forEach(a -> System.out.println(a.getName()));
System.out.println("--------------------------------------------");
List<String> userNameList = Arrays.asList("捡田螺的小男孩", "程序员田螺", "捡瓶子的小男孩");
userNameList.forEach(System.out::println);
HashMap<String, String> hashMap = new HashMap<>();
hashMap.put("公众号", "捡田螺的小男孩");
hashMap.put("职业", "程序员田螺");
hashMap.put("昵称", "捡瓶子的小男孩");
hashMap.forEach((k, v) -> System.out.println(k + ":\t" + v));
System.out.println("--------------------------------------------");
Map<Integer, List<userInfo>> listMap = userInfoList.stream().collect(Collectors.groupingBy(userInfo::getId));
System.out.println(listMap);
System.out.println("--------------------------------------------");
List<userInfo> infos = userInfoList.stream().sorted(Comparator.comparing(userInfo::getAge)).collect(Collectors.toList());
infos.forEach(a -> System.out.println(a.toString()));
System.out.println("开始降序排序:");
List<userInfo> infos2 = userInfoList.stream().sorted(Comparator.comparing(userInfo::getAge).reversed()).collect(Collectors.toList());
infos2.forEach(a -> System.out.println(a.toString()));
System.out.println("--------------------------------------------");
List<String> list = Arrays.asList("A", "B", "F", "A", "C");
List<String> temp = list.stream().distinct().collect(Collectors.toList());
temp.forEach(System.out::println);
System.out.println("--------------------------------------------");
list.stream().findFirst().ifPresent(System.out::println);
System.out.println("--------------------------------------------");
Stream<String> stream = Stream.of("A", "B", "C", "D");
boolean b = stream.anyMatch(s -> s.contains("C"));
System.out.println(b);
System.out.println("--------------------------------------------");
Stream<String> stream2 = Stream.of("A", "B", "C", "D");
boolean match = stream2.allMatch(s -> s.contains("C"));
System.out.println(match);
System.out.println("--------------------------------------------");
long count = userInfoList.stream().filter(user -> user.getAge() > 18).count();
System.out.println("大于18岁的用户:" + count);
}
}