题目链接:
题目描述:Java中的StringBuilder有一个字符串翻转函数,因此,可以先将输入的数字转换为字符串,再将String字符串转换为StringBuilder,调用StringBuilder的reverse函数后,再转换回来;
即经历以下过程:int--->String--->StringBuilder--->String
代码实现:
1 import java.util.Scanner; 2 3 public class Main { 4 public static String reverse(String str) { 5 return new StringBuilder(str).reverse().toString();//将字符串str转换为StringBuilder后调用reverse函数,再转换为String 6 } 7 8 public static void main(String[] args) { 9 Scanner scanner = new Scanner(System.in);10 int cnt ;11 while (scanner.hasNext()) {12 cnt=0;13 int n = scanner.nextInt();14 int[] res=new int[50];15 int i=0;16 while (true) {17 if (n == Integer.parseInt(reverse(String.valueOf(n)))) {18 res[i++]=n;19 break;20 } else {21 cnt++;22 res[i++]=n;23 n+=Integer.parseInt(reverse(String.valueOf(n)));24 }25 }26 System.out.println(cnt);27 for(int j=0;j");29 }30 System.out.println(res[i-1]);31 }32 scanner.close();33 }34 }