下面的返回值是做什么的?我该如何使用这个值呢:
private Map<Double, String> theLabels = new HashMap<Double, String>();
public Double[] getTheLabels() {
return theLabels.keySet().toArray(new Double[0]);
}
正确吗?
Double[] aD = theClassInQuestion.getTheLabels();
提前感谢。
HJW
这是正确的,但是,除非thellabels为空,否则将强制重新分配数组。下面是另一个选项:
public Double[] getTheLabels() {
return theLabels.keySet().toArray(new Double[theLabels.size()]);
}
将键集转换为Double
s数组。编译器/JVM需要new Double[0]
参数来推断要返回的数组的正确类型。(如果数组参数足够长,可以容纳所有键值,则使用它,否则将创建一个具有所需长度的相同运行时类型的新数组。)
这是Javadoc。
你对返回值的赋值是正确的