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

十六进制数的NumberFormatException[重复]

谭俊
2023-03-14

在我的代码中

int i = Integer.parseInt("f8004896",16);

当我运行程序时,它抛出一个数字格式异常

java.lang.NumberFormatException: For input string: "f8004896"

我做错了什么?这似乎相对简单,但不起作用。

共有2个答案

郭思淼
2023-03-14

f8004896的十进制值为4160768150,大于2^31-1(int型的上限)。因此,您应该使用long代替:long。parseLong()

戴正阳
2023-03-14
long i = Long.parseLong("f8004896", 16);
System.out.println(i);
System.out.println(Integer.MAX_VALUE);

输出:

4160768150
2147483647
 类似资料:
  • 问题内容: 如何将十进制转换为以下格式的十六进制(至少两位,零填充,没有0x前缀)? 输入: 输出: 输入: 输出: 我尝试过,但似乎它显示了第一个示例,但没有显示第二个示例。 问题答案: 将该功能与格式一起使用。 该部分要求使用至少2位数字,并使用零将其填充到长度,表示小写的十六进制。 的 格式规范的迷你语言 也给你大写十六进制输出,并且可以前缀字段宽度与以包括或前缀(取决于你阉羊使用或作为格式

  • 主要内容:二进制数、八进制数和十六进制数的表示,二进制数、八进制数和十六进制数的输出C语言中的整数除了可以使用十进制,还可以使用二进制、八进制和十六进制。 二进制数、八进制数和十六进制数的表示 一个数字默认就是十进制的,表示一个十进制数字不需要任何特殊的格式。但是,表示一个二进制、八进制或者十六进制数字就不一样了,为了和十进制数字区分开来,必须采用某种特殊的写法,具体来说,就是在数字前面加上特定的字符,也就是加前缀。 1) 二进制 二进制由 0 和 1 两个数字组成,使用时必须以

  • 问题内容: 如何将RGB格式的颜色转换为十六进制格式,反之亦然? 例如,转换为。 问题答案: 注 :这两个版本的期待整数值,并且,所以你需要,如果你有非整数值做自己的舍入。 以下将执行RGB到十六进制的转换,并添加任何所需的零填充: 转换另一种方式: 最后,在答案中讨论并在@cwolves的评论中建议使用的替代版本: 更新 这是它的一个版本,还解析了一个速记的三元组,例如“#03F”:

  • Python3 实例 以下代码用于实现十进制转二进制、八进制、十六进制: # -*- coding: UTF-8 -*- # Filename : test.py # author by : www.runoob.com # 获取用户输入十进制数 dec = int(input("输入数字:")) print("十进制数为:", dec) print("转换为二进制为:", bin(dec

  • 问题内容: 因此,在Java中,您知道如何声明这样的整数: 我认为您应该能够逆转这一过程。我有这个代码: 其中primary是自定义Color类的对象。它的构造函数使用Integer表示不透明度(0-99)和十六进制String(例如)。 这是方法: 当我调用此方法时,它给出了以下信息: 我不明白发生了什么事。有人可以解释一下吗? 问题答案: 请问有帮助吗? 表示您应该将字符串解释为基于16的(十

  • 当我将parseInt(“3cf1bb13f1c96”,16)粘贴到javascript控制台时,它成功地转换为整数值,即1072142774901910,但当我使用integer时。parseInt(“3cf1bb13f1c96”,16)在java中,它打印一些东西