Java基础__学习笔记__Steam流
stream流看API数据处理文档
流只能使用一次,应该严格定义为被使用一次
package SteamDemo; import java.awt.List; import java.util.*; import java.util.function.Function; import java.util.function.Predicate; import java.util.stream.Stream; public class StreamDemo1 { public static void main(String[] args) { /** * Collection集合获取流 */ Collection<String> list = new ArrayList<>(); Stream<String> arrstream = list.stream(); /** * Map集合获取流 */ Map<String, Integer> map = new HashMap<>(); //键流 Stream<String> keystream = map.keySet().stream(); //值流 Stream<Integer> valuestream = map.values().stream(); //键值流 Stream<Map.Entry<String, Integer>> keyandvaluestream = map.entrySet().stream(); /** * 数组获取流 */ String[] name = {"陈明旭", "罗昊", "卢毅"}; Stream<String> namestream = Arrays.stream(name); Stream<String> namestream2 = Stream.of(name); namestream.filter((String s) -> s.length() == 2).distinct().forEach(s -> System.out.println(s)); // namestream.filter(s-> s.length() == 2).distinct().forEach(s -> System.out.println(s)); Arrays.stream(name).filter((String s) -> s.startsWith("罗")).distinct().forEach(s -> System.out.println(s)); Collection<String> list1 = new ArrayList<>(); Collections.addAll(list1,"陈明旭", "罗昊", "卢毅"); //map加工方法 可以在 list1.stream().map(s -> "男同"+s.length()+":"+s ).forEach(s -> System.out.println(s)); } }
浙公网安备 33010602011771号