エッジケース:数値の各桁
整数の各桁を取り出して並べ替える、といったプログラミング演習はよくあります。整数の末尾の桁を最速で取得する方法は、10 での剰余(% 10)を使うことです。これは、整数を 10 で割ったときの余りを返します。
次に示すのは、整数の末尾の桁を返すメソッドです。このメソッドは、ありうる入力のちょうど半分、つまり負の数で失敗します。理由は、10 での剰余が整数の符号を保持するためです。
lastDigit() メソッドが誤った値を返すような整数値を入力してください。
この演習はコースの一部です
Javaによるテスト入門
演習の手順
lastDigit()メソッドが末尾の桁を正しく特定できない、複数桁の整数を書いてください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
public class LastDigit {
public static void main(String[] args) {
// Write down an integer that causes an incorrect return value of lastDigit()
int n = ____;
System.out.println("The last digit of " + n + " equals " + lastDigit(n) + ".");
}
public static int lastDigit(int a) {
return a % 10;
}
}