【发布时间】:2013-08-08 20:01:13
【问题描述】:
我有一个要转换为 double[] 数组的 Arraylist。我首先将 Arraylist 转换为 String []。然后我尝试将 String[] 转换为 double[] 但在此过程中失败。这是问题所在:字符串包含一些文本,以及一些带小数的数字。我只想将数字和小数转换为 double[] 数组并简单地删除文本。但是,我只知道如何使用 String 删除文本,而不是 String[]。请看:
import java.util.ArrayList;
import java.util.List;
import jsc.independentsamples.SmirnovTest;
public class example {
public static void main(String[] arg) throws Exception {
ArrayList<String> list1 = new ArrayList<String>();
ArrayList<String> list2 = new ArrayList<String>();
list1.add("RSP0001,1.11,1.22");
list1.add("RSP0002,2.11,2.22");
list1.add("RSP0003,3.11,3.22");
list1.add("RSP0004,4.11,4.22");
String[] str1 = new String[list1.size()];
str1 = list1.toArray(str1);
str1.replaceAll("RSP_\\d+","");
double array1 = Double.parseDouble(str1);
System.out.println(array1);
}
}
由此产生两个错误:第一个是 str1.replaceAll 处的“找不到符号”错误。第二个是“Double.parseDouble”处的“方法 parseDouble”错误。问题是我需要一个字符串而不是字符串 []。
关于如何将我的 String[] 转换为 double[] 的任何想法?
谢谢,
kjm
【问题讨论】:
-
如果这是java代码,你应该使用java标签。
-
另外,您是否有任何理由创建
ArrayList<String>,然后立即转换为String[],而不是一开始就创建String[]? -
是的,这是有原因的:上面的代码是更长代码的一小部分,为此,我需要 ArrayLists。
-
啊好吧,这更有意义。在这种情况下,它可能有助于准确地分解你想要做的事情。听起来您想为列表中的每个项目做一些事情,但您试图直接传递列表,而不是实际循环遍历每个元素。
-
这就是这个问题被否决的原因吗?
标签: java arrays string arraylist double