99
至099
并将其反转= 990
这是我的代码,但它没有更改number
。为什么呢?
int number = 99;
String strI = String.format("%03d", number);
new StringBuilder(strI).reverse().toString();
number = Integer.parseInt(strI);
return number;
答案 0 :(得分:6)
您没有将toString
的结果分配回strI
。
我想你想要
strI = new StringBuilder(strI).reverse().toString();
答案 1 :(得分:2)
String strI = String.format("%03d", number);
strI = new StringBuilder(strI).reverse().toString(); //Capture the result into strI
number = Integer.parseInt(strI);
return number;
答案 2 :(得分:2)
备用非字符串版本(更快):
int number = 99, result = 0;
for (int i = 0; i < 3; i++, number /= 10)
result = result * 10 + number % 10;
return result;
答案 3 :(得分:1)
您必须将StringBuilder
的输出分配给变量,并将该变量用于整数解析。
示例强>
public class Reverse {
public static void main(String args[]) {
String s = String.format("%03d", 99);
String o = new StringBuilder(s).reverse().toString();
int number = Integer.parseInt(o);
System.out.println(number);
}
}