建立流的5種方式 篩選 對映 排序

2022-06-24 04:39:14 字數 1829 閱讀 8191

一、建立流的5種方式

/**

* 建立流的5種方式

*/public

static

void

test1()

二、篩選與切片

/**

* 篩選與切片

* filter 接收lambda,從流中排除某些元素

* limit 截斷流,使袁術不超過給定的數量。

* skip(n) 跳過元素,返回乙個扔掉了前n個元素的流。若元素中不足n個,則返回乙個空流。與limit(n)互補

* distinct 篩選,通過流產生的元素的hashcode() 和 equals()去除重複元素

*/public

static

void

test2() );

//終止操作:一次性執行全部內容,即"惰性求值"

stream.foreach(system.out::println);

}

執行結果:

stream api 的中間操作

stream api 的中間操作

employee [id=102, name=李四, age=59, salary=6666.66]

stream api 的中間操作

stream api 的中間操作

stream api 的中間操作

employee [id=105, name=田七, age=38, salary=5555.55]

對映

streammap(function

funciton是函式型介面,只有乙個入參,那麼這個入參即【類:例項方法】呼叫的類對應的型別。

funciton沒有第二個引數,所以【類:例項方法】--> 【例項方法】沒有引數。

public

static

void

test5()

/**

* 字串轉字元流

* @param

str *

@return

*/public

static streamfiltercharacter(string str)

return

list.stream();

}/*** map流套流,相當於collection.add(collection) [['a','a','a'],['b','b','b'],['c','c','c']]

*/public

static

void

test6() );

}/*** flatmap流套流相當於collection.addall(collection)['a','a','a','b','b','b','c','c','c']

*/public

static

void

test7()

排序

/**

* sorted 預設排序

* sorted(comparator) 定製化排序

*/public

static

void

test8()

else

}).foreach(system.out::println);

}

5種排序方式

package sort public class sortmethods 1.第一種排序,比較簡單,氣泡排序 bubblesort a bubblesort2 a 2.選擇排序,先遍歷一遍,把最大的數的位置找出來,放在最後乙個位置,即a a.length 1 selectsort a 3.插入排序...

執行緒池的5種建立方式

1 single thread excecutor 只有乙個執行緒的執行緒池,因此所有提交的任務是順序執行,executors.newsinglethreadexecutor 2 cached thread pool 執行緒池裡面有很多執行緒需要同時執行,老的可用執行緒將被新的任務觸發重新執行,如果...

Scala 建立物件的5種方式

1 直接使用伴生類的建構函式 object test class user object test class user object user 3 使用反射 使用predef提供的classof方法 object test class user 4 使用clone方法 前提 類要繼承clonabl...