控制台输入数字,输出这个数的翻转。如输入123456789,输出987654321;
1.利用字符串与数组
思想:先将整数转换成字符串,然后定义一个长度为字符串长度的数组,数组的内容存放字符串的倒装。
package cn.tedu.test4;
import java.util.Arrays;
import java.util.Scanner;
public class RverseDemo {
//控制台输入数字,输出这个数的倒装
public static void main(String[] args) {
System.out.print("请输入一个数:");
long num = new Scanner(System.in).nextLong();//输入12345
String n = ""+num; //将整数转换成字符串
// System.out.println(n); //"12345"
int length = n.length();//获取字符串长度
// System.out.println(length);//5
char[] re = new char[length];//这里注意必须要是char类型
for(int i = 0;i<length;i++) {
// System.out.print(n.charAt(length-i));
re[i]=n.charAt(length-(i+1));//数组的第一个数据存放字符串的最后一个数据
System.out.print(re[i]);
}
}
}
结果显示:
请输入一个数:12345
54321
2.利用整数的取余和取模
思想:输入一个整数num,num%10得到个位数gw,num/10得到一个去除个位数的整数。
新的num=num/10;
新的个位数gw=num%10;
取出的数re=re*10+gw;(re初始值为0)
package cn.tedu.test4;
//import java.util.Arrays;
import java.util.Scanner;
public class RverseDemo {
//控制台输入数字,输出这个数的倒装
public static void main(String[] args) {
System.out.print("请输入一个数:");
long num = new Scanner(System.in).nextLong();//输入12345
long re = 0;
for(long num1=num;num1>0;num1=num1/10) {
long gw = num1%10;
re=re*10+gw;
}
System.out.println(re);
}
}
结果显示:
请输入一个数:123456789
987654321