题目描述
输入一个整数,将这个整数以字符串的形式逆序输出
程序不考虑负数的情况,若数字含有0,则逆序形式也含有0,如输入为100,则输出为001
输入描述:
输入一个int整数
输出描述:
将这个整数以字符串的形式逆序输出
输入例子:
1516000
输出例子:
0006151
import java.util.Scanner;
import java.util.Stack;
public class NC_003_reverseDigital {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int digital = scanner.nextInt();
ReverseDigital(digital);
System.out.println(ReverseDigital1(digital));
}
//方法一:通过使用两个栈来实现逆序
public static void ReverseDigital(int digital){
if(digital < 0){
return;
}
Stack stack = new Stack();
Stack stack1 = new Stack();
String str = "";
while(digital != 0){
int remender = digital % 10;
stack.push(remender);
digital = digital / 10;
}
while(!stack.isEmpty()){
stack1.push(stack.pop());
}
while(!stack1.isEmpty()){
System.out.print(stack1.pop());
}
}
//方法二:
public static String ReverseDigital1(int digital){
String string = String.valueOf(digital);
StringBuffer stringBuffer = new StringBuffer();
for(int i = string.length() - 1; i >= 0; i--){
stringBuffer.append(string.charAt(i));
}
return stringBuffer.toString();
}
}