我有一个 BigInteger 数字,我需要将它转换为十六进制。我尝试了以下方法:
String dec = null;
System.out.println("Enter the value in Dec: ");
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
dec = br.readLine();
BigInteger toHex=new BigInteger(dec,16);
String s=toHex.toString(16);
System.out.println("The value in Hex is: "+ s);
但这并没有给我转换后的正确值。谁能帮忙。
最佳答案
你应该改变
BigInteger toHex=new BigInteger(dec,16);
到
BigInteger toHex=new BigInteger(dec,10);
^
目前您要求用户提供十进制值,然后将输入解释为十六进制值。 (这就是输出与输入相同的原因。)
关于java - 如何在 Java 中将 BigInteger 值转换为 Hex,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11918123/