【发布时间】:2016-08-23 12:46:01
【问题描述】:
我想获取 1 到 9999 之间的任何用户输入整数并返回该数字,并将其数字反转。我的代码的问题是它返回输入整数的总和,我不知道如何修复它。这是我到目前为止想出的代码:
import java.util.Scanner;
class Reverse{
public static void main(String []args){
Scanner input = new Scanner(System.in);
System.out.print("Enter a number between 1 and 9999: ");
int user = input.nextInt();
if(user>1 && user<9999){
System.out.println("The number with its digits reversed is : " + reverseDigit(user));
}else{
System.out.println("Invalid Input");
}
}
public static int reverseDigit(int num){
return (num%10 + (num%100)/10 + (num%1000)/100 + num/1000); //This is the problem
}
}
【问题讨论】:
-
为什么不把输入当成字符串,反转后再转成整数呢?
-
提示:
num % 10 * 1000将最后一位移动到第一位。
标签: java methods user-input reverse digit