0

我有一个包含多行的字符串,每行包含许多元素。我只在每行的第三个元素之后。这段代码有什么东西吗?

String[] separate = getArray().split("\n");
for (int i = 0; i < separate.length; i++)
{
    String[] inner = separate[i].split("/");
    for (int y = 0; y < inner.length; y++)
    {
        _listArray.add(String.valueOf(inner[2]));                   
    }
}

它没有做它应该做的,或者我只是太累了。

4

2 回答 2

3

不需要内部循环。

String[] lines = getArray().split("\n");
for (String line : lines) {
  String[] tokens = line.split("/");
  _listArray.add(tokens[2]);
}

您可能需要一个安全装置来确保tokens.length >= 2

于 2013-04-16T18:44:22.530 回答
2

不应该是:

String[] separate = getArray().split("\n");
for (int i = 0; i < separate.length; i++)
{
String[] inner = separate[i].split("/");
if(inner.length<3)
     throw new RuntimeException("Wrong data");//or ignore line as desire
else _listArray.add(String.valueOf(inner[2]));                   
}
于 2013-04-16T18:44:35.583 回答