Java 中将 int 转换为String字符串

培训教学 潘老师 8个月前 (09-08) 217 ℃ (0) 扫码查看

要将int值转换为字符串,我们可以使用String.valueOf()或Integer.toString()方法。在内部,前者调用了后者,因此应优先使用Integer.toString()。

1.使用Integer.toString()

Integer.toString(int)方法返回一个表示指定int值的字符串,该值作为方法参数传递。默认情况下,参数会被转换为带符号的十进制(基数10)字符串格式。

String toString(int i);

例如,我们可以传递任何正数或负数值,并获得其字符串形式的值。

Assertions.assertEquals("0", Integer.toString(0));
Assertions.assertEquals("40", Integer.toString(40));
Assertions.assertEquals("-40", Integer.toString(-40));

1.1. 不会抛出异常

请注意不要超过int类型的最大值(2147483647)和最小值(-2147483648)。如果超过上限或下限,我们将得到意外的结果。

Assertions.assertEquals("2147483647", Integer.toString(Integer.MAX_VALUE));
Assertions.assertEquals("-2147483648", Integer.toString(Integer.MAX_VALUE + 1));// 超出上限
Assertions.assertEquals("-2147483648", Integer.toString(Integer.MIN_VALUE));
Assertions.assertEquals("2147483647", Integer.toString(Integer.MIN_VALUE - 1));// 超出下限

1.2. 二进制、八进制和十六进制字符串

请注意,如果我们希望以其他进制的值获取字符串表示,我们可以使用其他几个内置方法。默认基数是10。

  • Integer.toBinaryString():返回二进制形式的字符串表示。
  • Integer.toOctalString():返回八进制形式的字符串表示。
  • Integer.toHexString():返回十六进制形式的字符串表示。
Assertions.assertEquals("101000", Integer.toBinaryString(40));
Assertions.assertEquals("50", Integer.toOctalString(40));
Assertions.assertEquals("28", Integer.toHexString(40));

2.使用String.valueOf()

String.valueOf(int i)返回int参数的字符串表示。它在内部调用了Integer.toString(),因此表示始终完全相同。

String valueOf(int i);

让我们再次测试之前部分中的int值。

Assertions.assertEquals("0", String.valueOf(0));
Assertions.assertEquals("40", String.valueOf(40));
Assertions.assertEquals("-40", String.valueOf(-40));
Assertions.assertEquals("2147483647", String.valueOf(Integer.MAX_VALUE));
Assertions.assertEquals("-2147483648", String.valueOf(Integer.MAX_VALUE + 1));
Assertions.assertEquals("-2147483648", String.valueOf(Integer.MIN_VALUE));
Assertions.assertEquals("2147483647", String.valueOf(Integer.MIN_VALUE - 1));

3.使用+拼接空串

还有一种最简单的方式,就是直接使用“+”运算符拼接空串。比如:

Assertions.assertEquals("0",0+"");
Assertions.assertEquals("40", 40+""); 
Assertions.assertEquals("-40",-40+"");

3.结论

在Java中,将int值转换为字符串并不是一项困难的任务,但知道哪种方法可以节省一些CPU周期是值得了解的。在这种情况下,我们应始终首选使用Integer.toString()进行int到String的转换。


版权声明:本站文章,如无说明,均为本站原创,转载请注明文章来源。如有侵权,请联系博主删除。
本文链接:https://www.panziye.com/teach/8902.html
喜欢 (0)
请潘老师喝杯Coffee吧!】
分享 (0)
用户头像
发表我的评论
取消评论
表情 贴图 签到 代码

Hi,您需要填写昵称和邮箱!

  • 昵称【必填】
  • 邮箱【必填】
  • 网址【可选】