445. 数字反转
给定一个整数,请将该数各个位上数字反转得到一个新数。
新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零。
输入格式
输入共1行,1个整数N。
输出格式
输出共1行,1个整数表示反转后的新数。
数据范围
$|N|≤10^9$
输入样例:
123
输出样例:
321
输入样例:
-380
输出样例:
-83
思路:
这就是一个简单的模拟题,我们根据题意步骤就能直接写出代码。主要就是下面两个知识点:
1. 用flag
标记正负,方便我们对数字部分的统一处理。
2. Java
中String
类并没有reverse
方法,而StringBuilder
中有该方法,所以这里我们需要先将字符串封装成StringBuilder
,反转后再转回字符串即可。
Java代码
import java.util.*;
public class Main{
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
boolean flag = true;//标记n是否是正数
if(n < 0) flag = false;
n = Math.abs(n);
//注意Java中String类并没有reverse方法,而StringBuilder中有该方法
//所以这里我们需要先将字符串封装成StringBuilder,反转后再转回字符串
String str = new StringBuilder(String.valueOf(n)).reverse().toString();
n = Integer.valueOf(str);
if(!flag){
System.out.println(-n);
}else{
System.out.println(n);
}
}
}
玩AC SABER吗
没玩 我就刷刷题 然后写成博客笔记 哈哈哈