我正在尝试找到一种不需要以下步骤的方法反转数字:将其转换为字符串以获取长度、反转字符串并解析回来和运行单独的循环来计算长度。目前,我的实现方式如下:
public static int getReverse(int num){
int revnum =0;
for( int i = Integer.toString(num).length() - 1 ; num>0 ; i-- ){
revnum += num % 10 * Math.pow( 10 , i );
num /= 10;
}
return revnum;
}
但我希望实现上述的3个条件。
我正在寻找一种方式,可能使用位移操作符或其他类型的位运算。
是否有可能?如果是,怎么做?
注:如果输入为1234,则应返回4321。 我将只颠倒整数和长整数。
10000
进行翻转?只剩下1
了吗?你会失去那些“零”。 - dacwe