JavaでAtoi関数を書いています。+ve 整数に対しては正常に動作します。しかし、私が欲しいのは、負の整数を入力するとエラーが発生するはずです。そこで、クラス Atoi に continue ステートメントを含めてみました。実装されているクラスは次のとおりです。
class Atoi {
int atoi(String tmp) {
int result = 0;
for (int i = 0; i < tmp.length(); i++) {
char digit = (char)(tmp.charAt(i) - '0');
if(digit == '-')
continue;
}
else {
result += (digit * Math.pow(10, (tmp.length() - i - 1)));
}
return result;
}
}
しかし残念なことに、それは文字の負の等価物を私に与えます。つまり、-12 の場合は 655312 になります! ヘルプ。
編集:浮動小数点数をチェックする必要があるとします。どうすればよいですか? 12.1 または 123.2 を入力すると、それぞれ 12.1 と 123.2 が返されます!!