Stream流的常用API
public static void main ( String[ ] args) {
List< String> ls = new ArrayList < > ( ) ;
ls. add ( "小白" ) ;
ls. add ( "小黑子" ) ;
ls. add ( "蓝天白" ) ;
ls. add ( "小红" ) ;
ls. stream ( ) . filter ( s - > s. length ( ) == 3 ) ;
ls. stream ( ) . filter ( s - > s. length ( ) == 3 ) . forEach ( System. out: : println) ;
long count = ls. stream ( ) . filter ( s - > s. length ( ) == 3 ) . count ( ) ;
System. out. println ( count) ;
ls. stream ( ) . filter ( s - > s. length ( ) == 3 ) . limit ( 1 ) . forEach ( System. out: : println) ;
ls. stream ( ) . filter ( s - > s. length ( ) == 3 ) . skip ( 1 ) . forEach ( System. out: : println) ;
ls. stream ( ) . map ( a - > a + "新的字符串" ) . forEach ( System. out: : println) ;
ls. stream ( ) . map ( b - > new Student ( b, 22 ) ) . forEach ( System. out: : println) ;
}
ls. stream ( ) . filter ( s - > s. length ( ) == 3 ) . forEach ( System. out: : println) ;
count: 统计个数 long count () ;
long count = ls. stream ( ) . filter ( s - > s. length ( ) == 3 ) . count ( ) ;
System. out. println ( count) ;
filter : 过滤元素 – Stream filter (Predicate<? super T> predicate)
ls. stream ( ) . filter ( s - > s. length ( ) == 3 ) ;
ls. stream ( ) . filter ( s - > s. length ( ) == 3 ) . limit ( 1 ) . forEach ( System. out: : println) ;
ls. stream ( ) . filter ( s - > s. length ( ) == 3 ) . skip ( 1 ) . forEach ( System. out: : println) ;
map : 映射 相当于一个加工方法 将这个对象变为另外一个对象
ls. stream ( ) . map ( a - > a + "新的字符串" ) . forEach ( System. out: : println) ;
ls. stream ( ) . map ( b - > new Student ( b, 22 ) ) . forEach ( System. out: : println) ;
public static void main ( String[ ] args) {
List< String> ls = new ArrayList < > ( ) ;
ls. add ( "小白" ) ;
ls. add ( "小黑子" ) ;
ls. add ( "蓝天白" ) ;
ls. add ( "小红" ) ;
Stream< Integer> s1 = Stream. of ( 10 , 20 , 30 , 40 ) ;
Stream< String> s2 = ls. stream ( ) ;
Stream< Object> concat = Stream. concat ( s1, s2) ;
concat. forEach ( System. out: : println) ;
}