如何将String数组拆分为单独的int和String数组?

时间:2014-03-03 23:35:54

标签: java arrays split

我有这个代码,我正在尝试排序。因此,我想将我的数组拆分为一个名为ages的数组,另一个名为。以下是我到目前为止的情况:

    String na = "Jones 14 \nAbrams 15 \nSmith 19 \nJones 9\nAlexander 22\nSmith 20\nSmith 17\nTippurt 42\nJones 2\nHerkman 12\nJones 11";
    String text[] = na.split("\\s+");

到目前为止,这只是在空白处拆分数组。我希望我的输出包含所有年龄[]的数字,以及名称[]中的所有单词。

2 个答案:

答案 0 :(得分:1)

您可以先按换行符分割。

String lines = na.split("\n");

在循环lines时,按空格\\s+拆分每一行,以拆分当前行的每个字段。

for (String line : lines)
{
   String[] text = line.split("\\s+");
   // other processing
}

然后,您可以访问各个值并将它们分配给数组或任何您想要的内容。您存储2个数组的想法可以正常工作,但我会创建一个数组或List Person个{{1}}个对象,这些对象被定义为保存您的字段,如姓名和年龄。

答案 1 :(得分:0)

试试这个。

    String names[] = na.split("\\s*\\d+\\s*");
    String ages[] = na.split("\\s*\\D+\\s*");

你应该稍微调整一下,但这个想法应该没问题。