Pra*_*dav -2 java arrays string int
//convert the comma separated numeric string into the array of int.
public class HelloWorld
{
public static void main(String[] args)
{
// line is the input which have the comma separated number
String line = "1,2,3,1,2,2,1,2,3,";
// 1 > split
String[] inputNumber = line.split(",");
// 1.1 > declare int array
int number []= new int[10];
// 2 > convert the String into int and save it in int array.
for(int i=0; i<inputNumber.length;i++){
number[i]=Integer.parseInt(inputNumber[i]);
}
}
}
Run Code Online (Sandbox Code Playgroud)
他们是否有更好的解决方案。请提出建议,否则这是唯一的最佳解决方案。
我这个问题的主要目的是找到最佳解决方案。
Java 8 流提供了一个漂亮而干净的解决方案:
String line = "1,2,3,1,2,2,1,2,3,";
int[] numbers = Arrays.stream(line.split(",")).mapToInt(Integer::parseInt).toArray();
Run Code Online (Sandbox Code Playgroud)
编辑:既然你要求 Java 7 - 你所做的已经很不错了,我只更改了一个细节。您应该初始化数组,inputNumber.length以便在输入String更改时您的代码不会中断。
Edit2:我还稍微更改了命名以使代码更清晰。
String line = "1,2,3,1,2,2,1,2,3,";
String[] tokens = line.split(",");
int[] numbers = new int[tokens.length];
for (int i = 0; i < tokens.length; i++) {
numbers[i] = Integer.parseInt(tokens[i]);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7472 次 |
| 最近记录: |