2 回答

TA貢獻(xiàn)2051條經(jīng)驗(yàn) 獲得超10個(gè)贊
您只能在一個(gè)流上調(diào)用一個(gè)終端操作(例如:求和,計(jì)數(shù),收集..),因此答案是否定的,您不能使用同一流來(lái)執(zhí)行您指定的2個(gè)不同的終端操作。
文檔的一小部分摘錄說(shuō):
執(zhí)行終端操作后,流管道被視為已消耗,無(wú)法再使用;如果需要再次遍歷相同的數(shù)據(jù)源,則必須返回到數(shù)據(jù)源以獲取新的流。在幾乎所有情況下,終端操作人員都很渴望在返回之前完成對(duì)數(shù)據(jù)源的遍歷和對(duì)管道的處理。只有終端操作iterator()和spliterator()不在;在現(xiàn)有操作不足以完成任務(wù)的情況下,將它們作為“逃生艙口”提供以啟用任意客戶(hù)端控制的管道遍歷。

TA貢獻(xiàn)1786條經(jīng)驗(yàn) 獲得超13個(gè)贊
每個(gè)終端操作在源鏈上調(diào)用iterator()。您只能調(diào)用一個(gè)終端操作,因?yàn)镾tream不允許對(duì)其管道進(jìn)行多次遍歷。這樣做會(huì)產(chǎn)生IllegalStateException
。選擇該文件是為了保持一致性,以支持單發(fā)流源,例如從網(wǎng)絡(luò)讀取文件或字節(jié)。
添加回答
舉報(bào)