0

整数を作成し、値を逆に出力する必要があります。したがって、私の番号が 12345 の場合、次のように出力する必要があります。

5
4
3
2
1

数字は別の行にある必要があります。

System.out.println(number.nextDigit());

それぞれにnextDigit();最後の数字から次の数字を返すメソッドがあり、文字や文字列ではなく整数を返す必要があります。

何か助けはありますか?

ここに私のコードがあります: http://pastebin.com/xrpKZixE

4

3 に答える 3

4

複数の文字で構成される文字列とは異なり、ints は 1 つの数字を表します。

この問題をints で解決する秘訣は、 %and/演算子を適用することnum % 10です。を取るnum / 10と、最後の桁が切り落とされます。

while (num != 0) {
    int lastDigit = num % 10;
    num /= 10;
    System.out.println(lastDigit);
}
于 2012-10-31T01:45:45.647 に答える
2

おそらく、文字列に変換してそこから移動するのが最も簡単です。

String digits = String.valueOf(number);
char thirdDigit = digits.charAt(2);
int thirdDigitAsNumber = Integer.parseInt(digits.substring(2,3));
于 2012-10-31T01:46:31.177 に答える
1

上記の答えは良いです。私があなたの質問を正しく理解していれば、再帰的な方法を使用して、最後の桁から垂直に数字を印刷することもできます。使用できる再帰的な方法は次のとおりです。

public static void writeVertical(int number)
{
if(number <10)
 System.out.println(number);
else
{
 System.out.println(number%10);
 writeVertical(number/10);
}

}

于 2012-10-31T02:11:06.827 に答える