스트림의 첫 경험
스트림은 Java 8의 작동 컬렉션의 중요한 기능입니다. 먼저 Java에서 스트림이 정의되는 방법을 살펴 보겠습니다.
"순차적이고 병렬 골재 연산을 지원하는 일련의 요소."
위의 문장을 해석합시다.
1. 스트림은 요소 모음으로 스트림을 반복자처럼 보이게합니다.
2. 원래 스트림을 순서대로 집계하는 작업을 지원할 수 있습니다.
스트림을 만드는 방법에는 여러 가지가 있으며 가장 일반적인 것 외에 컬렉션을 만들 수있는 몇 가지 다른 방법이 있습니다.
스트림에 나열하십시오
컬렉션 인터페이스에서 상속을 나열하고 Collection은 Stream () 메소드를 제공합니다.
목록 <integer> list = lists.newarrayList (1, 2, 3); stream <integer> stream = list.stream ();
스트림으로 배열
배열의 경우 배열은 스트림 () 메소드를 제공합니다.
문자열 [] arr = new String [] { "a", "b", "c"}; stream <string> stream = arrays.stream (arr); 스트림에지도
맵은 시퀀스가 아니라 컬렉션이 아니며 스트림 ()으로 직접 변환 할 방법이 없습니다. 그러나 EntrySet ()가 설정되어 있으며 변환 할 수 있습니다.
map <string, object> map = maps.newhashmap (); stream <enther <string, object >> stream = map.entryset (). Stream ();
스트림을 직접 만듭니다
스트림은 또한 스트림을 직접 생성하는 API를 제공하며, 이는 목록으로 대략 이해할 수 있습니다. 내부는 배열에 의해 구현되기 때문입니다.
스트림 <integer> integterStream = stream.of (1, 2, 3);
파일의 스트림을 읽으십시오
Linux를 사용한 사람들은 명령 줄의 파이프 기호에 감탄하며 파이프 기호는 지속적으로 처리 될 수 있습니다. Java에서 파일을 읽을 때 유사한 기능을 구현할 수 있습니다.
long ingiquerds = 0; try (stream <string> lines = files.lines (paths.get ( "data.txt"), charset.defaultcharset ())) {irliqueWords = lines.flatMap (l-> arrays.stream (l.split ( ")))) 함수를 통한 무한 흐름을 생성합니다
스트림은 반복을 제공하여 초기 값에 기초한 무한 시퀀스 인 무한 시퀀스를 생성합니다. Lambda를 사용하여 매번 2를 추가하는 것과 같은 시퀀스 생성 규칙을 설정할 수 있습니다.
stream.istrate (0, n-> n + 2) .limit (10) .foreach (System.out :: println);
예를 들어, Fibonacci 서열
stream.iterate (new int [] {0, 1}, t-> new int [] {t [1], t [0] + t [1]}) .limit (20) .map (t-> t [0]) .foreach (System.out :: println); 스트림은 또한 시퀀스를 생성하는 다른 생성 메소드를 제공합니다. 사용자 지정 생성 시퀀스 함수 intsupplier를 수신합니다.
intsupplier fib = 새로운 intsupplier () {private int previous = 0; 개인 int current = 1; @override public int getasint () {int oldprevious = this.previous; int nextValue = this.previous + this.current; this.previous = this.current; this.current = nextValue; oldprevious를 반환합니다. }}; intstream.generate (fib) .limit (10) .foreach (System.out :: println);요약
위는이 기사의 전체 내용입니다. 이 기사의 내용에 모든 사람의 연구 나 작업에 대한 특정 참조 가치가 있기를 바랍니다. 궁금한 점이 있으면 의사 소통을 위해 메시지를 남길 수 있습니다. Wulin.com을 지원 해주셔서 감사합니다.