【发布时间】:2013-04-15 11:12:18
【问题描述】:
这可能吗?我已经为此苦苦挣扎了一段时间。我最初是先转换为Long [],然后转换为double [],这让我可以编译,但随后给我一个转换错误。我现在被困住了。
在这段代码中,我正在遍历我的哈希图中的条目。
Object[] v = null;
for(Map.Entry<String,NumberHolder> entry : entries)
{
v = entry.getValue().singleValues.toArray(); //need to get this into double []
}
这是我的 numberHolder 类
private static class NumberHolder
{
public int occurrences = 0;
public ArrayList<Long> singleValues = new ArrayList<Long>();
}
【问题讨论】:
-
为什么 v 需要是一个对象数组?
-
我会将 singleValues 设为
TDoubleArrayList,它允许您调用 toArray() 以返回double[]注意:double[]不是Object[],因为double不是Object -
@BenGreen 不是我只是要接受它并尝试让它翻倍[]
-
小心
long -> double的任何转换,因为会损失精度。因此,如果您使用的是高度精确的数字,您可能会遇到问题