java - Stream.of(int[]) 返回 Stream而 Stream.of(String[]) 返回 Stream为什么?
问题描述
Stream.of(int[])
返回Stream<int[]>
,而Stream.of(String[])
返回Stream<String>
。
为什么这两种方法的行为不同?两者都应该返回
Stream<int>
andStream<String>
或Stream<int[]>
and Stream<String[]>
。
static int intArr[] = { 1, 2, 3, 4, 5 };
static String stringArr[] = { "3", "6", "8","14", "15" };
Stream<int[]> stream = Stream.of(intArr);
Stream<String> stream1 = Stream.of(stringArr);
解决方案
没有这种东西Stream<int>
,就像没有一样List<int>
。泛型类型参数不能用原始类型代替。
对于(原始)int
元素流,有IntStream
. IntStream.of(int... values)
并且Arrays.stream(int[] array)
都会给你一个IntStream
,它的元素是int
,你把一个传递int[]
给他们。
推荐阅读
- java - FXML 导入静态嵌套类
- html - 在跨度中添加填充时,它给了我错误的结果
- kubernetes - 使用 yaml 文件向 minikube 公开服务
- c# - 将随机值保存到二维数组中
- kubernetes - Docker UCP 控制器因错误而关闭:不健康的 UCP 管理器:无法访问管理器:连接:连接被拒绝
- ios - 在 Swift 项目中为 Firebase 集成制定协议一致性
- replace - 替换sql数据库中的部分文本
- javascript - 向下滚动到该进度条时,如何使该进度条开始动画?
- activemq - ActiveMQ(NMS):有没有办法在队列上运行查询以找出所有具有特定标头值的消息?
- python - 为什么 Keras 在使用我的代码时会产生尺寸错误?