我以为是将整数颠倒后的整数输出,看来理解错了,不过还是把我的劳动成果贴出来,当成另一种结果。- //(1)while方法
- int init = 12457;
- int i = 1;
- int result = 0;
- while (init / i > 0) {
- i = i * 10;
- }
- i = i / 10;
- int count = 1; // 定义基数,从各位开始,下面每次乘10,直到最高位数
- int temp = 0;
- while (i > 0) {
- temp = init / i; // 获取最高位的值
- result += (temp) * count; // 最高位的值乘以反转之后对应的基数
- init = init - temp * i; // 除去原始数的最高位
- i = i / 10; // 下次的最高位的基数
- count = count * 10; // 每次乘10
- }
- System.out.println(result);
- // (2)StringBuffer反转字符串 ,如果学了这个,更方便
- int i1 = 12345;
- StringBuffer sb = new StringBuffer(String.valueOf(i1)); // 通过int值获取字符串,然后用该字符串定义StringBuffer
- String res = sb.reverse().toString(); // 通过Stringbuffer的反转方法反转字符串,返回的结果调用tostring转换为String类型
- int iResult = Integer.parseInt(res); // String类型转换为int类型
- System.out.println(iResult);
-
复制代码 |