在java项目开发中,经常会有类型转换处理,有以下四种实现方案。
一、经典类实现
使用integer的parseint函数实现,参考代码如下
function<string,integer> stringtoint = new stringtoint();
public static class stringtoint implements function<string,integer>{
@override
public integer transapply(string str){
return integer.parseint(s);
}
}
二、匿名类实现
匿名类实现,参考代码如下所示。
function<string,integer> stringtoint = new function<string,integer>{
@override
public integer transapply(string str){
return integer.parseint(s);
}
}
三、lamda实现
java 8 新特性实现方案,实现起来更加方便,参考代码如下所示。
function<string,integer> stringtoint = s -> integer.parseint(s);
四、方法引用实现
方法引用实现更加优雅,参考代码如下所示。
function<string,integer> stringtoint = integer::parseint;
五、方法补充
下面小编为大家整理了string转integer的其他方法,希望对大家有所帮助
1.string转换为integer
integer类的静态方法valueof()
string str = "123"; integer i =integer.valueof(str);
integer.parseint(string s)
string str = "123"; integer i2 = integer.parseint(str);
2.integer类型转换为string类型
integer类的静态方法tostring()
integer a = 111; string str = integer.tostring(a);
integer类的成员方法tostring()
integer a = 111; string str = a.tostring();
string类的静态方法valueof()
integer a = 111; string str = string.valueof(a);
3.char类型转换为int
利用字符的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';
进行类型强转
char c = '1'; int c3=(int)c;
到此这篇关于java实现string转integer的四种方案对比的文章就介绍到这了,更多相关java string转integer内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论