Java的string 转换成 integer的方式及原理

在Java中,可以使用Integer.parseInt()方法将字符串转换为整数。

Integer.parseInt()方法接受一个字符串参数,并尝试将其解析为整数。如果字符串可以成功解析为整数,则返回解析后的整数值。如果无法解析为整数,则会抛出NumberFormatException异常。

该方法的原理是遍历字符串中的每个字符,并将其转换为对应的数字。具体步骤如下:

  • 如果字符串以正号 (+) 或负号 (-) 开头,则将其作为符号位,并记录正负号。
  • 遍历字符串中的每个字符:
    • 通过ASCII码将字符转换为对应的数字。
    • 将数字乘以10,并加上当前字符的数字值,以便计算下一个数字的位数。
  • 如果字符串以非数字字符结尾,则结束转换,并返回之前计算的整数值。
  • 如果字符串中存在非数字字符,则抛出NumberFormatException异常。

以下是一个示例,将字符串 "123" 转换为整数的过程:

java 复制代码
String str = "123";
int num = Integer.parseInt(str);
System.out.println(num);  // 输出: 123

在这个示例中,Integer.parseInt()方法将字符串"123"解析为整数123,并将其赋值给变量num。最后输出num的值为123。

相关推荐
小林敲代码778821 小时前
Spring Boot 3 升级踩坑:aj-captcha 行为验证码底图加载失效
java·spring boot·后端
带刺的坐椅1 天前
Solon I18n:三种解析器,零样板代码
java·国际化·i18n·solon·多语言
掉鱼的猫1 天前
Solon I18n:三种解析器,零样板代码
java
程序员阿明1 天前
spring boot3访问resources下的文件,使得在浏览器url中可以直接访问
java·spring boot·后端
wuminyu1 天前
JUC包的AQS与JVM的ObjectMonitor机制对比分析
java·linux·c语言·jvm·c++
霸道流氓气质1 天前
SpringBoot中使用OAuth2 认证与 JWT Token — 概念、原理与实践
java·spring boot·后端
dogstarhuang1 天前
Kimi K3 本地部署实战:从 1.56TB 权重到推理服务的完整成本分析
java·人工智能·后端·ai·开源·接口·程序员创富
就不掉头发1 天前
C++函数模板
java·开发语言·c++
用户298698530141 天前
Word 转 PDF 的 3 种自动化实现:从桌面操作到后端服务集成
java·人工智能·后端
Zane19941 天前
线程池进阶:如何科学设置线程数(结合实际业务场景复盘)
java·后端