数字反转
给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(如:输入-380,输出-83)。
输入
输入共1行,一个整数N。
输出
输出共1行,一个整数,表示反转后的新数。
样例输入
123
样例输出
321
[解决办法]
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个整数:");
int number=sc.nextInt();
int positive=1;//正数,positive=1,否则-1。
if(number<0)
{
positive=-1;
number=-number;
}
String str=""+number;
//---------------------方法1 计算
//
int length=str.length();
int reverseNumber=0;
for(int i=0;i<length;i++)
{
reverseNumber=reverseNumber*10+number%10;
number=number/10;
}
System.out.println("通过计算,翻转后的数是: "+reverseNumber*positive);
//---------------------方法2 通过字符串翻转。借用StringBuffer类的reverse()
//
StringBuffer sb=new StringBuffer(str);
sb.reverse();
reverseNumber=Integer.parseInt(sb.toString());
System.out.println("通过字符串翻转,翻转后的数是: "+reverseNumber*positive);
}