有人可以幫助我瞭解爲什麼,如果我的VAL值是"0"
Integer.parseInt(val)
返回我NumberFormatException
,如果我寫Integer.parseInt("0")
它工作正常...parseInt函數處理
有一個比較容易的方式直接讀取int值工作從串行?
void draw(){
i=0;
byte[] str = new byte[5];
if (myPort.available() > 0)
{
myPort.readBytesUntil(10, inBuffer);
if(inBuffer==null){
//...
}
else
{
while(inBuffer[i]!=13){
str[i]=inBuffer[i];
println((int)str[i]);
i++;
}
String val = new String(str);
i = Integer.parseInt(val);
println(i);
}
}
}
這不是一個答案,應該是一個註釋。 –
@IngoBürk我不同意。答案是在解析它之前打印出字符串的值,並且這個錯誤發生的時間有90%會工作。 –
不,您的帖子會要求OP在解析前打印出來,因爲您懷疑其值不同。這是懷疑和要求反饋,而不是回答這個問題。 –