簡體   English   中英

Java Integer.ParseInt錯誤

[英]Java Integer.ParseInt bug

初始字符串= 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]);

如果要遍歷以下代碼...

formeCoord = new int[coord.length];
formeCoord[i] = Integer.parseInt(coord[i]);

除了上次運行,您每次都要重置formeCoord

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM