简体   繁体   English

如何将字符串数组转换为int数组?

[英]How to convert a string array to an int array?

How do I convert a string like: 我如何将字符串转换为:

"114 214 219"

Into an an int array so I have something like this stored in my int array: 放入一个int数组,所以我的int数组中存储了以下内容:

int[] couseNumbers = int[3];

for(int i = 0; i < 3; i++){
     courseNumbers[i] = Integer.parseInt(/*get int in the string array*/);
}

Split the String into an array first. 首先将字符串拆分为一个数组。

String[] stringArray = "114 214 219".split(" ");

Then in the loop you can access that array: 然后在循环中可以访问该数组:

courseNumbers[i] = Integer.parseInt(stringArray[i])

Try this 尝试这个

String s = "1 2 3";
String array[] = s.split(" "); //Splits the Array by spaces
int a[] = new int[array.length]; //Makes new int array
for(int i=0;i<a.length;i++){
    a[i] = Integer.parseInt(array[i]); //Converts String to int
}

Using Java 8 streams. 使用Java 8流。

 List<Integer> courseNumbers = Arrays.stream("1123 213 23"
  .split(" ")).map(x-> Integer.parseInt(x))
  .collect(Collectors.toList());

Answer above by Eduardo Dennis will not work as string cannot convert to int directly. Eduardo Dennis的上述回答将不起作用,因为字符串无法直接转换为int。 You can do something like this. 你可以做这样的事情。

 public static void main(String []args){
    String s = "114 214 219";
    String [] courseNumbers = s.split(" ");
    Integer [] intArray = new Integer[courseNumbers.length];
    for(int i= 0; i < courseNumbers.length; i++){
        intArray[i] = Integer.parseInt(courseNumbers[i]);
    }

 }

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

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