我正在尝试拆分 String[]
数组的各个元素。数组看起来像
{"0 1 0 1", "0 0 1 1", "1 1 0 1",...}.
我想用正则表达式“”(一个空格)拆分每个元素。如果我这样做,是否会将一个元素“0 1 0 1”变成 4 个元素“0”、“1”、“0”和“1”?这是我的代码,它将元素添加到列表中(从一个文本文件中读取,其中的行由空格分隔的 4 位数字),但使用“拆分”方法的部分不起作用。它对产生的阵列没有任何影响。 String[]
数组的名称被“拆分”。
int j=0;
String thisLine = null;
while(((thisLine=readThrough.readLine()) != null) && j<3){
splitted[j]= thisLine;
splitted[j].split(" ");
j++;
}
最佳答案
split()
方法不会就地修改字符串,您必须将返回的 String[]
分配给某些东西.如果你想处理所有的值,尝试这样的事情:
String[] array = {"0 1 0 1", "0 0 1 1", "1 1 0 1"};
List<String> answer = new ArrayList<String>();
for (String str : array)
for (String s : str.split(" "))
answer.add(s);
循环运行后,answer
将包含以下字符串值:
[0, 1, 0, 1, 0, 0, 1, 1, 1, 1, 0, 1]
可选地,如果您需要将输出结果作为字符串数组,您可以这样做:
String[] output = answer.toArray(new String[answer.size()]);
关于Java,如何拆分列表的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24346300/