Stream-取得と一般的な方法
18233 ワード
package com.itheima.demo02.Stream;
import java.util.*;
import java.util.stream.Stream;
/*
java.util.stream.Stream Java 8 。( 。)
, :
- Collection stream ;
default Stream stream()
- Stream of 。
static Stream of(T... values)
,
*/
public class Demo01GetStream {
public static void main(String[] args) {
// Stream
List<String> list = new ArrayList<>();
Stream<String> stream1 = list.stream();
Set<String> set = new HashSet<>();
Stream<String> stream2 = set.stream();
Map<String,String> map = new HashMap<>();
// , Set
Set<String> keySet = map.keySet();
Stream<String> stream3 = keySet.stream();
// , Collection
Collection<String> values = map.values();
Stream<String> stream4 = values.stream();
// ( entrySet)
Set<Map.Entry<String, String>> entries = map.entrySet();
Stream<Map.Entry<String, String>> stream5 = entries.stream();
// Stream
Stream<Integer> stream6 = Stream.of(1, 2, 3, 4, 5);
//
Integer[] arr = {1,2,3,4,5};
Stream<Integer> stream7 = Stream.of(arr);
String[] arr2 = {"a","bb","ccc"};
Stream<String> stream8 = Stream.of(arr2);
}
}
package com.itheima.demo03.Stream;
import java.util.ArrayList;
import java.util.stream.Stream;
/*
: (Stream )
//1. 3 ; 。
//2. 3 ; 。
//3. ; 。
//4. 2 ; 。
//5. ; 。
//6. Person ; 。
//7. Person 。
*/
public class Demo02StreamTest {
public static void main(String[] args) {
//
ArrayList<String> one = new ArrayList<>();
one.add(" ");
one.add(" ");
one.add(" ");
one.add(" ");
one.add(" ");
one.add(" ");
one.add(" ");
one.add(" ");
Stream<String> oneStream = one.stream().filter(name -> name.length() == 3).limit(3);
//
ArrayList<String> two = new ArrayList<>();
two.add(" ");
two.add(" ");
two.add(" ");
two.add(" ");
two.add(" ");
two.add(" ");
two.add(" ");
Stream<String> twoStream = two.stream().filter(name -> name.startsWith(" ")).skip(2);
Stream.concat(oneStream,twoStream).map(name->new Person(name)).forEach(p-> System.out.println(p));
}
}