1. 程式人生 > 其它 >java8中如何建立stream流呢?

java8中如何建立stream流呢?

下文筆者講述Java程式碼建立stream流的方法分享,如下所示:

Stream.of可變引數的建立方式

Stream<String> stream1 = Stream.of("java265.com", "java265.com-2", "java265.com-3");
System.out.println("stream1:" + stream1.collect(joining()));

Stream.of 使用陣列的方式建立

String[] values = new String[]{"java265.com", "java265.com-2", "java265.com-3"};
Stream<String> stream2 = Stream.of(values);
System.out.println("stream2:" + stream2.collect(joining()));

Stream ...的方式建立

String[] values = new String[]{"java265.com", "java265.com-2", "java265.com-3"};
Stream<String> stream3 = Stream.of(values);
System.out.println("stream3:" + stream3.collect(joining()));

list建立stream

List建立stream,也是我們最常用的一種方式

List<String> list = Arrays.asList("java265.com", "java265.com-2", "java265.com-3");
Stream<String> stream4 = list.stream();
System.out.println("stream4:" + stream4.collect(joining()));

set建立stream

Set<String> set = new HashSet<>(Arrays.asList("java265.com", "java265.com-2", "java265.com-3"));
Stream<String> stream5 = set.stream();
System.out.println("stream5:" + stream5.collect(joining()));

map建立stream

Map<String, String> map = new HashMap<>();
map.put("1", "java265.com");
map.put("2", "java265.com-2");
map.put("3", "java265.com-3");
Stream<String> stream6 = map.values().stream();
System.out.println("stream6:" + stream6.collect(joining()));

Stream.iterate的方式建立stream

Stream<String> stream7 = Stream.iterate("A", e -> String.valueOf((char) (e.charAt(0) + 1))).limit(3);
System.out.println("stream7:" + stream7.collect(joining()));

Pattern

String value = "java265.com java265.com-1 java265.com-2";
Stream<String> stream8 = Pattern.compile("\\W").splitAsStream(value);
System.out.println("stream8:" + stream8.collect(joining()));

Files.lines

try {
    Stream<String> stream9 = Files.lines(Paths.get("d:\test.txt"));
    System.out.println("stream9:" + stream9.collect(joining()));
} catch (IOException e) {
    e.printStackTrace();
}

Stream.generate

Stream<String> stream10 = Stream.generate(() -> "Q").limit(3);
System.out.println("stream10:" + stream10.collect(joining()));

轉自:http://www.java265.com/JavaJingYan/202204/16498578492855.html