软件测试第四周——String 转 int
Java 中 String转int有两种常用方法:
第一种方法:i=Integer.parseInt(str);
第二种方法:i=Integer.valueOf(str).intValue();
以上两种方法都可以实现string转int,但两者有一点区别,第一种方法直接使用的String类型的静态方法,第二种方法会多产生一个对象。但两者都会抛出异常。
下面说一下使用parseint(str),str不是数字时抛出异常解决方案:
第一种,使用try catch 将 parseint()包起来,自己接受exception信息,并实现解决方案。
e.g.
try{
Integer i = Integer.parseint(str);
}
catch(Exception e)
{
System.out.println("transition failure")
}
第二种,使用正则表达式过滤
e.g.
public static void main(String args[]){
String s="12345a";
boolean b=s.matches("[0-9]*");
if(b) {
int i=Integer.parseInt(s);
System.out.println(i);
}
else{
System.out.println("输入的数字有误!");
}
}
第三种:写成函数,对string进行判断,调用jave自带的判断是否是数字的函数,还可增加可读性
e.g.
for(int i = 0; i < str.length(); i++){
if(!character.isDigit(str.charAt(i))){
return false;
}
}
最后,有时候读入string是需要去除前后空格,不然抛出异常,这时候我们使用 string.trim("")函数可以去除字符串首末的空白。