给定一个整数,请将该数各个位上数字反转得到一个新数。

给定一个整数,请将该数各个位上数字反转得到一个新数。(新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零)

import java.util.Scanner;

public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();
        String x = String.valueOf(N);
        StringBuilder y = new StringBuilder(x); //使用System.Text.StringBuilder类,可以修改字符串而不创建新的对象
        if(N == 0){  //当输入的整数为0时,输出0
            Integer a = Integer.valueOf(x);
            System.out.println(a);
        }else if(N < 0){  //当输入的整数为负数时,利用reverse()方法进行反转
            y.reverse(); //进行反转
            x = y.substring(0,y.length()-1); //提取字符串中介于两个指定下标之间的字符。
            Integer b = Integer.valueOf(x); //将字符串类型转化为int输出
            System.out.println("-" + b);
        }else{  //当输入的整数为正数时,利用reverse()方法进行反转
            y.reverse();
            Integer c = Integer.valueOf(y.toString());
            System.out.println(c);
        }
    }
}

你可能感兴趣的:(练习)