【问题标题】:How can I copy a String to a int array? (Java)如何将字符串复制到 int 数组? (爪哇)
【发布时间】:2017-03-16 20:11:52
【问题描述】:

我有一个包含数字的字符串,我想把这个数字放在一个 int 数组中。

格式是这样的:

String s = "234, 1, 23, 345";

int[] values;

我想要什么:

values[0]=234

values[1]=1

values[2]=23

values[3]=345

【问题讨论】:

标签: java arrays string int


【解决方案1】:

您可以通过逗号split字符串,通过标记iterate并将它们添加到另一个数组中,通过将每个标记转换为integer,例如:

public static void main(String[] args){
    String s = "234, 1, 23, 345";
    String[] tokens = s.split(",");
    int[] numbers = new int[tokens.length];
    for(int i=0 ; i<tokens.length ; i++){
        numbers[i] = Integer.parseInt(tokens[i].trim());
    }
}

【讨论】:

    【解决方案2】:

    研究使用字符串实用程序

    String[] strings= s.split(","); 
    

    然后遍历字符串并使用类似这样的方法将它们添加到 int 数组中

    for(int i = 0; i < strings.size(); i++){
        values [i] = Integer.parseInt(strings[i]);
    }
    

    【讨论】:

      【解决方案3】:

      尝试拆分字符串

      String s = "234, 1, 23, 345";
      String array[] = s.split(", ");
      int a[] = new int[array.length];
      for(int i=0;i<a.length;i++)
          a[i] = Integer.parseInt(array[i]);
      

      【讨论】:

        【解决方案4】:

        使用 Java8:

        String s = "234, 1, 23, 345";
        String array[] = s.split(", ");
        Stream.of(array).mapToInt(Integer::parseInt).toArray();
        

        【讨论】:

          【解决方案5】:

          您应该拆分、for-loop 并解析为 int

          String s = "234, 1, 23, 345";
          String[] splittedS = s.split(", ");
          int[] values = new int[splittedS.length];
          
          for (int i = 0; i < splittedS.length; i++) {
              values[i] = Integer.parseInt(splittedS[i]);
          }
          System.out.println(Arrays.toString(values));
          

          如果你能够使用流java8

          String[] inputStringArray = s.split(", ");
          Integer[] convertedREsult = Arrays.stream(inputStringArray).map(Integer::parseInt).toArray(Integer[]::new);
          System.out.println(Arrays.toString(convertedREsult));
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2013-08-25
            • 2021-08-19
            • 2013-11-29
            • 1970-01-01
            • 1970-01-01
            • 2016-09-30
            • 2013-12-25
            相关资源
            最近更新 更多