始める無料で始める

TDD を使って数値を反転する - パート2

要件をコードに落とし込めたので、いよいよ実装に進みます!前の演習の続きとして、さきほど書いた単体テストを含むほぼ同じコードが見えています。ここでのタスクは、 10 の剰余(% 10)を使って reverse() メソッドを実装することです。

この演習はコースの一部です

Javaによるテスト入門

コースを見る

演習の手順

  • 各イテレーションで % 10 を使い、元の数の末尾の桁を取り出します。
  • 各イテレーションで / 10 を使い、元の数の末尾の桁を切り捨てます。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

public class IntReverser {

    public static int reverse(int num) {
        int inverted = 0;
        while (num != 0) {
            // At every iteration take the last digit with % 10 and add to inverted * 10.
            inverted = inverted * 10 + ____;
            // Discard the last digit using / 10.
            num = ____;
        }
        return inverted;
    }

    public static class IntReverserTest {
    
    	@Test
        public void testReverse_reversesNumber() {
            int input = 1234;
            int expected = 4321;

            int actual = IntReverser.reverse(input);

            assertEquals(expected, actual);
        }
    }

    public static void main(String[] args) {
		launchTestsAndPrint(IntReverserTest.class);
    }
}
コードを編集して実行