我必须调用一个将数字转换为单词的方法,然后调用另外两个正在反转并获取输入数字的方法,并且必须在第一个方法中都调用这两个方法,但是在数字100的情况下,它给出的输出为ONE,但应该给出一个所以我的困惑是如何在转换数字方法时调用计数方法并使给出的输出为一个零值。
public static void numberToWords(int number) {
if (number == 0) {
System.out.println("Zero");
} else if (number < 0) {
System.out.println("Invalid Value");
}
int revInteger = reverse(number);
while (revInteger != 0) {
int modulus = revInteger % 10;
revInteger /= 10;
switch (modulus) {
case 1:
System.out.println("One");
break;
case 2:
System.out.println("Two");
break;
case 3:
System.out.println("Three");
break;
case 4:
System.out.println("Four");
break;
case 5:
System.out.println("Five");
break;
case 6:
System.out.println("Six");
break;
case 7:
System.out.println("Seven");
break;
case 8:
System.out.println("Eight");
break;
case 9:
System.out.println("Nine");
break;
default:
break;
}
}
}
public static int reverse(int reversedNumber) {
int revNumber = reversedNumber;
int digit = 0;
while (revNumber != 0) {
int n = revNumber % 10;
digit = digit * 10 + n;
revNumber /= 10;
}
return digit;
}
public static int getDigitCount(int number) {
int count = 0;
if (number > 0) {
while (number != 0) {
number /= 10;
++count;
}
return count;
} else if (number == 0) {
return 1;
}
return -1;
}