gpt4 book ai didi

JAVA-如何根据空格将字符串拆分为int数组

转载 作者:行者123 更新时间:2023-11-30 03:02:36 32 4
gpt4 key购买 nike

我有多行输入,其中每行都是矩阵行。我将此行保存为字符串,之后我想根据空格分割该字符串,但由于可读性更好,数字之间的空格数未定义。所以当我想稍后解析为 int 时,它会抛出一个错误,因为在某些地方有多个空格。有什么解决方案可以解决这个问题吗?谢谢

这是我的代码,我如何尝试解决这个问题

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String line;
int[][] matrix=new int[n][n];
String[] temp;
for (int row = 0; row < n; row++) {
line =br.readLine();
temp = line.split("\\s+");
for(int i=0;i<n;i++){
matrix[i][row]=Integer.parseInt(temp[i]);
}

这是示例输入

10 10  0 10  5
5 20 10 7 12
1 2 3 5 9
10 15 20 35 2
2 15 5 15 2

最佳答案

问题是当字符串开头有空格时:

"10 10  0 10  5".split("\\s+"); // ["10", "10", "0", "10", "5"]
" 5 20 10 7 12".split("\\s+"); // ["", "5", "20", "10", "7", "12"]

所以你会得到一个额外的空字符串。添加额外的 trim() 应该会有所帮助:

line.trim().split("\\s+");

关于JAVA-如何根据空格将字符串拆分为int数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35585724/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com