小智 250
最简单的方法是使用 Integer.toHexString(int)
Joã*_*lva 39
public static int convert(int n) {
return Integer.valueOf(String.valueOf(n), 16);
}
public static void main(String[] args) {
System.out.println(convert(20)); // 32
System.out.println(convert(54)); // 84
}
Run Code Online (Sandbox Code Playgroud)
也就是说,将原始数字视为十六进制,然后转换为十进制.
你可以试试这样的东西(你在纸上做的方式):
public static int solve(int x){
int y=0;
int i=0;
while (x>0){
y+=(x%10)*Math.pow(16,i);
x/=10;
i++;
}
return y;
}
public static void main(String args[]){
System.out.println(solve(20));
System.out.println(solve(54));
}
Run Code Online (Sandbox Code Playgroud)
对于您给出的示例,将计算:0*16 ^ 0 + 2*16 ^ 1 = 32和4*16 ^ 0 + 5*16 ^ 1 = 84
| 归档时间: |
|
| 查看次数: |
164812 次 |
| 最近记录: |