繁体   English   中英

如何在Java中将具有整数的字符串转换为具有整数的数组?

[英]How can I convert a string with integers to array with integers in java?

我想将具有整数的字符串转换为Java中具有整数的数组。 我如何做到这一点?我有一个包含字符串的数组。每个字符串都是整数。 我想通过单击按钮访问每个字符串。

 String[] INT_ARRAY={

        //0
        "250,125,20,20,20,40,20,20,20,40,20,20,20,2500",

        //1 
        "233,63,28,63,29,63,28,16,28,17,26,63,29,17,26,16....
                     ........

                 }

   public void onClick(View v) {

        counter++;
        String IntString = INT_ARRAY[counter];

                    String[] parts = IntString.split(",");


          final int[] A = new int[parts.length()];

          for(int i=0; i<parts.length(); i++){

            A[i] = Integer.parseInt(parts(i));

                            Toast.makeText(getApplicationContext(),String.valueOf(A[i]), Toast.LENGTH_SHORT).show();

        }

  }

您需要String#spilt()来分割字符串,例如:

String[] parts = "aa,bb,cc,dd".split(",");

现在, parts{"aa", "bb", "cc", "dd"}

然后使用Enhanced-for循环遍历每个部分,例如:

for(String part : parts) Log.d("", part);

因此,您可以对似乎是整数数组的数组进行部分序列化表示。 从您的代码中,您显然可以理解,您需要使用parseInt()将整数的字符串表示形式转换为int原语。 这部分看起来不错,但是您需要逻辑来遍历每个字符串中的每个逗号分隔值。 您可以使用split()方法从逗号分隔的列表中创建字符串数组。 整个解决方案如下所示:

public void onClick(View v) {

    counter++;
    String IntString = INT_ARRAY[counter];

    final String[] vals = IntString.split(","); // Here we split the comma-separated string
    final int[] A = new int[vals.length];

    for(int i=0; i<vals.length; i++){
        A[i] = Integer.parseInt(vals[i]);
        Toast.makeText(getApplicationContext(),String.valueOf(A[i]), Toast.LENGTH_SHORT).show();
    }

}
private Integer[] splitIntegers(String s){
        Object[] numbersAsString = s.split(",");
        return Arrays.copyOf(numbersAsString, numbersAsString.length, Integer[].class);
}

致电:

for(String s: INT_ARRAY){
  Integer[] ints = splitIntegers(s);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM