Stream流表面上看起来与集合类似,允许你转换和检索数据.然而,两者却有显著的不同1.流不存储元素.它们存储在底层的集合或者按需生成2.流操作不改变他们的源数据.例如filter方法不会从一个新流中删除元素,而是生成一个不包含特定元素的新流,3.如果可能的话,Stream操作可能是延迟执行的.这意味着知道需要结果的时候,方法才会执行.例如,如果你只需要找到前五个长单词而不是全部,filter方法在找到第五个长单词后就停止执行.所以你甚至可以拥有一个无穷流.count = words.strea