我想填写HashMap<Integer,Double[]>
Map<Integer,Double[]> cached_weights = new HashMap<Integer,Double[]>();
只定期int
和double[]
,最好的方法是什么?
我看到this question,但它回答了相反的问题。
答案 0 :(得分:2)
对于键(整数),编译器将自动为您处理,您可以直接传递一个int值。
对于布尔数组,您可以使用Java 8
处理这种方式Map<Integer, Double[]> foo = new HashMap<Integer, Double[]>();
double[] bar = new double[10];
//As you can see, 1 is passed directly and will be converted to Integer object.
foo.put(1, Arrays.stream(bar)
.boxed()
.toArray(Double[]::new));
DoubleStream的boxed
方法返回一个由此流的元素组成的Stream,框内为Double。
然后,您会看到一个Stream,您可以轻松调用toArray
转换为Double[]
。