1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
| package com.example.demo;
import org.junit.jupiter.api.Test;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import java.util.stream.IntStream;
import java.util.stream.Stream;
/**
* Stream流对象的五种创建方式
*/
public class StreamGenerator {
//1、基于数组进行创建
@Test
public void generator1(){
String[] arr = {"Lily","Andy","Jackson","Smith"};
Stream<String> stream = Stream.of(arr);
// stream.forEach(s-> System.out.println(s));
stream.forEach(System.out::println);
}
//2、基于集合进行创建
@Test
public void generator2(){
List<String> list = new ArrayList<>();
list.add("Lili");
list.add("Andy");
list.add("Jackson");
list.add("Smith");
Stream<String> stream = list.stream();
stream.forEach(System.out::println);
}
//3、利用generate方法创建无限长度流
@Test
public void generator3(){
Stream<Integer> stream = Stream.generate(() -> new Random().nextInt(100000));
stream.limit(10).forEach(System.out::println);
}
//4、基于迭代器创建流
@Test
public void generator4(){
Stream<Integer> stream = Stream.iterate(1,n->n+1);
stream.limit(100).forEach(System.out::println);
}
//5、基于字符序列创建流
@Test
public void generator5(){
String str = "abcdefg我的";
IntStream stream = str.chars();
//转换
stream.forEach(c -> System.out.println((char)c));
}
} |
「梦想一旦被付诸行动,就会变得神圣,如果觉得我的文章对您有用,请帮助本站成长」
共 0 条评论关于"Stream流对象的五种创建方式"
最新评论