当前位置: 首页 > 知识库问答 >
问题:

groovy将十六进制转换为十进制

鲁宏爽
2023-03-14

我需要转换十六进制-

def hex = 0x15B546EF13361F7B530C59332C60C2CE
int i= Integer.parseInt(hex,16);

当我运行这个错误实际上是显示我需要的值但我不能得到它

groovy.lang.的方法:静态java.lang.我nteger.parseInt()适用于参数类型:(java.math.大整数,java.lang.整数)值:[28855032353026779507009821653742961358,...]可能的解决方案:parseInt(java.lang.String,int),parseInt(java.lang.String)行错误:4

如果我按照错误提示将十六进制设置为字符串:

def hex = '0x15B546EF13361F7B530C59332C60C2CE'

java.lang.数字格式异常:对于输入字符串:"0x15B546EF13361F7B530C59332C60C2CE"

我错过了什么?

共有1个答案

龚勇锐
2023-03-14
def hex = 0x15B546EF13361F7B530C59332C60C2CE
int i = hex // int i = (hex as int)
println i

Groovy默认将数字存储在BigDecimals中。0x...符号只是编译器中BigDecimal的不同表现形式。

但正如你们所看到的:你们的十六进制数非常非常大——所以你们得到的值是错误的inttype无法存储这么大的值:Integer。MAX_VALUE==2147483647(偶数long类型:long.MAX_VALUE==9223372036854775807)对此或biginger应使用标准BigDecimal

 类似资料:
  • 问题内容: 我这里有一个将十进制转换为十六进制的函数,但它以相反的顺序打印。我该如何解决? 问题答案: 如果要自己编写此代码而不是使用内置函数,则可以在打印当前数字之前简单地进行递归调用:

  • 本文向大家介绍如何将十六进制转换为十进制?,包括了如何将十六进制转换为十进制?的使用技巧和注意事项,需要的朋友参考一下 而十六进制数是具有值是16的数字系统中的一个并且它具有唯一的16个码元:0,1,2,3,4,5,6,7,8,9和A,B,C,d,E ,其中A,B,C,D,E和F分别是十进制值10、11、12、13、14和15的单位表示。而十进制系统是最熟悉的号码系统向公众开放。它是10的基数,只

  • 本文向大家介绍如何将十进制转换为十六进制?,包括了如何将十进制转换为十六进制?的使用技巧和注意事项,需要的朋友参考一下 十进制是公众最熟悉的数字系统。它是基数10,只有10个符号-0、1、2、3、4、5、6、7、8和9。而十六进制是计算机或数字系统中最常见的数字系统颜色表示。它是基数16,只有16个符号:0、1、2、3、4、5、6、7、8、9和A,B,C,D,E,F。这些A,B,C,D ,E,F分

  • 我想知道如何将舞蹈方法的十进制结果包含到灯光方法中。例如,在这个程序中,如果我输入5F,十进制结果将是95。我希望95在light方法中显示为静态int变量,以便转换为二进制数。如果你能告诉我如何将十六进制数限制在2位数以内,那也会很有帮助。感谢阅读! } }

  • 问题内容: 我写了一些代码将十六进制显示字符串转换为十进制整数。但是,当输入类似100a或625b(带有字母的东西)时,我得到了这样的错误: java.lang.NumberFormatException:对于输入字符串:java.lang.Integer.parseInt(未知源)处的java.lang.NumberFormatException.forInputString(未知源)处为“ 1

  • 问题内容: 如何在JavaScript中将十进制值转换为等效的十六进制值? 问题答案: 使用以下命令将数字转换为十六进制字符串: 并通过以下步骤逆向处理: