【问题标题】:How to split a String array into separate int and String arrays?如何将 String 数组拆分为单独的 int 和 String 数组?
【发布时间】:2014-03-03 23:35:53
【问题描述】:

我有这段代码,我正在尝试排序。因此,我想将我的数组拆分为一个称为年龄,另一个称为名称。这是我目前所拥有的:

    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+");

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

【问题讨论】:

  • 那是数据字符串的确切格式吗?如果是,则根据空格拆分,遍历数组,将偶数索引放入name数组,奇数索引放入age数组。

标签: java arrays split


【解决方案1】:

可以先用换行符分割。

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

循环通过lines 时,用空格分割每一行,\\s+,以分割当前行上的每个字段。

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

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

【讨论】:

    【解决方案2】:

    试试这个。

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-23
      • 1970-01-01
      • 2011-04-06
      • 1970-01-01
      • 2018-05-10
      • 2018-01-31
      相关资源
      最近更新 更多