当前位置: 代码迷 >> Eclipse >> 数目字反转
  详细解决方案

数目字反转

热度:18   发布时间:2016-04-23 02:03:24.0
数字反转
给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(如:输入-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);
    }
  相关解决方案