私は単純な乗算で間違った結果を出している Java プログラムのメソッドを持っていますが、何が起こっているのかわかりません。拡張する必要があるのはEclipseの設定かもしれません-私にはわかりません。
このように単純です: 987,654,321 * 10. 明らかに 9,876,543,210 のはずです。代わりに、1,286,608,618 を取得しています。世界で何?この方法は、単純に文字を読み取り、トークン化された番号 (10 桁以内) をリストに追加するだけです。他のすべては正常に機能しますが、何らかの理由でこの番号が嫌いです。
public void number(char dig, boolean lc){
int num = Character.getNumericValue(dig);
if(number == 0){
number = num;
}
else{
number = number*10 + num;
}
if(lc){
if(String.valueOf(number).trim().length() <= intLength){
tokenList.add(number);
number = 0;
return;
}
else{
System.out.println("Error in number entry. Invalid or exceeded length: " + number);
number = 0;
return;
}
}
}