初始字符串 = 61440 <CARRE> 150 381 188 419 </CARRE>
我已将此字符串拆分为一个数组,其中现在包含坐标
String[] coord = t.group(2).split(" ");
结果输出是:
les coord est :150 381 188 419
i = 0 et sa valeur est :150
i = 1 et sa valeur est :381
i = 2 et sa valeur est :188
i = 3 et sa valeur est :419
为此我做了一个for循环:
formeCoord = new int[coord.length];
formeCoord[i] = Integer.parseInt(coord[i]);
现在我期望输出带有包含所有坐标的 int 数组。但输出是:
Voici la valeur de i =0 et sa valeur int: 0
Voici la valeur de i =1 et sa valeur int: 0
Voici la valeur de i =2 et sa valeur int: 0
Voici la valeur de i =3 et sa valeur int: 419
这是 for 循环:
for (int i = 0; i<formeCoord.length; i++){
System.out.println("Voici la valeur de i ="
+ i
+ "et sa valeur int: "
+ formeCoord[i]);
}
有人知道我做错了什么吗?
最佳答案
看来您每次迭代都会创建一个新数组,而不是添加到其中。
大概您的代码如下所示:
for (int i = 0; i < coord.length; i++)
{
formeCoord = new int[coord.length];
formeCoord[i] = Integer.parseInt(coord[i]);
}
您需要将其更改为:
formeCoord = new int[coord.length];
for (int i = 0; i < coord.length; i++)
formeCoord[i] = Integer.parseInt(coord[i]);
关于Java Integer.ParseInt 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15093412/