如何从 ArrayList<String> 转换为 double[]? [复制]

Posted

技术标签:

【中文标题】如何从 ArrayList<String> 转换为 double[]? [复制]【英文标题】:How can i convert from ArrayList<String> to double[]? [duplicate] 【发布时间】:2015-01-01 19:34:42 【问题描述】:

我有一个这样的 ArrayList:

[5, 181, 138, 95, 136, 179]

我想要做的是将此列表转换为双 []。像这样的。

double[] Fails = new double[]5, 181, 138, 95, 136, 179;

这是我的代码:

    ArrayList<String> DatesList = new ArrayList<String>();
    ArrayList<String> FailList = new ArrayList<String>();


    while (rs2.next()) 
        DatesList.add(rs2.getString("Date"));
        FailList.add(rs2.getString("fail"));
    

    double[] Fails = new double[]FailList; //obviously it doesn't work..

有没有办法从ArrayList转换成double[]?

【问题讨论】:

遍历它并将每个成员解析为双精度。显然你不能将初始化块与集合一起使用,也不能将字符串分配给双精度数。 @JeroenVannevel 如果标记为重复,至少包含一个链接.... @JeroenVannevel 我不认为它是重复的!应该重新打开! @JeroenVannevel 我的意思是一个合适的例子,这个问题的问题是将String转换为Double。而不是 ArrayList 到 Array @JeroenVannevel,@nafas,我认为你们俩都是对的。参考问题似乎与我的相同。问题是对于我的“短裤知识”来说,所有答案都不够清楚,我想念它`Double.parseDouble(failList.get(i));`来获得我正确的双重对象。但这是真的,从一些建议中得到你自己的答案要好得多,它会让我变得更好。无论如何,谢谢你们。 【参考方案1】:
List<String> failList = new ArrayList<>();

while (rs2.next())         //whatever that is (copied from OP)
    failList.add(rs2.getString("fail"));


double[] failsArray = new double[failList.size()]; //create an array with the size of the failList

for (int i = 0; i < failList.size(); ++i)  //iterate over the elements of the list
    failsArray[i] = Double.parseDouble(failList.get(i)); //store each element as a double in the array

这段代码的作用是,它首先创建一个数组failsArray,其大小与failList 相同。然后,它遍历failList 并将每个项目解析为双精度并将其存储在failsArray 中。

【讨论】:

太棒了,完美运行。非常感谢。

以上是关于如何从 ArrayList<String> 转换为 double[]? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何从 ArrayList<String> 转换为 double[]? [复制]

如何从 ArrayList<HashMap<String, String>> android 中获取所有元素

如何将对象类转换为 arrayList ? java [重复]

如何从 ArrayList 更新 JComboBox 内容?

在Hashmap中获取arrayList的大小

JTextArea 到 ArrayList<String> 的行