为什么Java 8 Streams只能从API级别24获得?

AAr*_*ryz 5 java android java-8 java-stream

支持的Java 8语言功能和API声明我们可以在任何min sdk API级别的android项目中使用默认方法和lambda表达式.

但是,Stream库(java.util.stream)仅支持API 24及更高版本.有人可以说明为什么会这样吗?对我来说没有任何意义,因为据我了解,增加流API的并没有要求JVM修改加入lambda表达式或默认方法的不同; 它只是简单地利用集合上的默认方法等Java 8功能,并为java util库添加了一些新代码?

Com*_*are 6

有人可以说明为什么会这样吗?

因为谷歌没有时间机器.或者,如果他们是,他们不是用它来"重新调整"以前版本的Android.

它只是简单地利用集合上的默认方法等Java 8功能,并为java util库添加了一些新代码?

正确.但是,Google无法更改java.util以前版本的Android上的课程.即使java.util通过库添加新类也是一个问题.