相关疑难解决方法(0)

使用连续的整数范围填充List

我想要一个包含1到500范围内整数的列表.是否有一些方法可以使用Guava(或简单的Java)创建此列表,而无需遍历范围并在我自己的范围内单独添加值码?

解析度

解决方案如下(在这里发布,因为一些答案提供了正确的信息,但没有一个给出完整的解决方案):

__PRE__

结果是类型 __CODE__

java guava

38
推荐指数
2
解决办法
3万
查看次数

使用流生成short []

使用连续的短裤范围填充列表的基础上,我尝试生成一组原始短裤.事实证明这比预期的要难得多.

Short[] range = IntStream.range(0, 500).mapToObj(value -> (short) value).toArray(Short[]::new) 工作但是:

short[] range = IntStream.range(0, 500).mapToObj(value -> (short) value).toArray(short[]::new) 生成编译器错误:

method toArray in interface Stream<T> cannot be applied to given types;
  required: IntFunction<A[]>
  found: short[]::new
  reason: inference variable A has incompatible bounds
    equality constraints: short
    upper bounds: Object
  where A,T are type-variables:
    A extends Object declared in method <A>toArray(IntFunction<A[]>)
    T extends Object declared in interface Stream
Run Code Online (Sandbox Code Playgroud)

这似乎是两个问题的交集:

  1. 原始Stream API不提供shorts 的实现.
  2. 非原始Stream API似乎不提供返回基本数组的机制.

有任何想法吗?

java java-8 java-stream

8
推荐指数
1
解决办法
1209
查看次数

标签 统计

java ×2

guava ×1

java-8 ×1

java-stream ×1