JAVA基础之String与Integer的转换

2年前 (2022) 程序员胖胖胖虎阿
155 0 0

我刷Leetcode题目的时候,经常会遇到变量类型转化的问题,方法也有很多种,经常容易混淆。所以特地总结以下内容:

1,String转换为Integer

1,Integer类的静态方法valueof()

String str = "123";
Integer i =Integer.valueOf(str);

2,Integer.parseInt(String s)

String str = "123";
Integer i2 = Integer.parseInt(str);

2,Integer类型转换为String类型

1,Integer类的静态方法toString()

Integer a = 111;
String str = Integer.toString(a);

2,Integer类的成员方法toString()

Integer a = 111;
String str = a.toString();

3,String类的静态方法valueOf()

Integer a = 111;
String str = String.valueOf(a);

3,char类型转换为int

1,利用字符的ASCALL码值进行转化

a,由于字符1的Ascall码的值为49,当用字符类型的变量减去int类型的变量时,会自动用字符型的ASCII编码值去进行操作,因此返回的就是int型的1。

char c = '1';
int c1= c-48;

b,在ASCII编码中,字符1与字符0的差值等于数字1,所以这样就可以在不装箱拆箱的情况下完成转换。

char c = '1';
int c2=c-'0';

2,进行类型强转

 char c = '1';
 int c3=(int)c;

PS:当读者进行测试后,会发现c3的结果不是1,而是49。这是因为当我们将char类型强转为int型时,返回的是字符的ASCII编码值,而不是其本身。

版权声明:程序员胖胖胖虎阿 发表于 2022年11月10日 下午6:08。
转载请注明:JAVA基础之String与Integer的转换 | 胖虎的工具箱-编程导航

相关文章

暂无评论

暂无评论...