javascript - Java将十六进制解析为整数
问题描述
当我将 parseInt("3cf1bb13f1c96", 16) 粘贴到 javascript 控制台时,它成功转换为整数值,即 1072142774901910 但是当我在 java 中使用 Integer.parseInt("3cf1bb13f1c96", 16) 时,它会打印一些东西
Exception in thread "main" java.lang.NumberFormatException: For input string: "3cf1bb13f1c96"
at java.lang.NumberFormatException.forInputString(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at Main.example(Main.java:line)
at Main.example(Main.java:line)
解决方案
您正在解析的值超出整数范围。在 Java 中,整数范围从 -2,147,483,648 到 +2,147,483,647 。尝试使用 Long 代替:
Long.parseLong("3cf1bb13f1c96", 16)
它解析成功:
> Task :Foo.main()
1072142774901910
推荐阅读
- python - 动态模块没有定义模块导出函数(PyInit_example)
- powerbi-desktop - 使用存储过程的 Power BI SQL Server 数据库连接
- arrays - 爱特梅尔 AVR 微控制器。我需要反转一个数组。我正在构建失败
- avro - avro 架构时间戳格式
- django-rest-framework - Django REST drf-嵌套字段的壮观错误检测
- c# - 用户身份验证过期后,CustomAuthStateProvider 不会重定向到登录
- python - 寻找较小数字的提醒(python)
- reactjs - React js/ 响应日志中的 304 状态
- flutter - 使用 StreamTransformer 缓冲多个事件?
- linux - 如何在bash中没有内部文件夹路径的情况下将特定文件tar到特定文件夹?