问题描述:
1. 问题涉及知识点.
- 整数的逆序
StringBuffer.reverse()
2. 自己解法.
- 解法一:按照整数每次取最底位的形式打印.
package com.chaoxiong.niuke.huawei;
import java.util.Scanner;
/**
* Create by tianchaoxiong on 18-4-9.
*/
public class HuaWei_11_2 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (scanner.hasNext()){
int key = scanner.nextInt();
getResult(key);
}
}
private static void getResult(int key) {
int []intArr = new int[9];
int intArrIndex = 0;
while (key>0){
intArr[intArrIndex] = key%10;
intArrIndex++;
key = key/10;
}
for(int i=0;i<intArrIndex;i++){
System.out.print(intArr[i]);
}
}
}
- 解法二:整数转字符,然后反向打印.
package com.chaoxiong.niuke.huawei;
import java.util.Scanner;
/**
* Create by tianchaoxiong on 18-4-9.
*/
public class HuaWei_11_2 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (scanner.hasNext()){
int key = scanner.nextInt();
getResult(key);
}
}
private static void getResult(int key) {
String strKey = key+"";
int len = strKey.length();
for(int i =0;i<len;i++){
System.out.print(strKey.charAt(len-1-i));
}
System.out.println();
}
}
- 解法三:整数转字符转
stringbuilder
.调用stringBuilder.reverse()
方法打印.
package com.chaoxiong.niuke.huawei;
import java.util.Scanner;
/**
* Create by tianchaoxiong on 18-4-9.
*/
public class HuaWei_11_3 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (scanner.hasNext()){
int key = scanner.nextInt();
getResult(key);
}
}
private static void getResult(int key) {
System.out.println(new StringBuffer(key+"").reverse());
}
}
3. 优质答案.
null
4. 本题总结.
整数的逆序最常用有三种方法
- 采用整数的形式每次%10再/10.
- 转为字符串,从最后一个开始遍历.
- 转为字符串,再转为StringBuffer
/StringBuilder
调用sb.reverse()
直接逆序.