字符串转化为整数,需要判断是不是全部的数字字符串,如果是,把字符串转化成字符数组,然后去遍历转化为整数。
实现过程如下所示:
package structs.string;
/**
* @author jcm
*
*时间 2016年8月27日
*/
public class StringToNum {
public static void main(String[] args) {
System.out.println(stringToNum("15686"));
}
/**
* @author jcm
* @see 字符串转化为整数,要判断是不是非法数字的字符串
* @param str
* @return 返回整数
*/
public static int stringToNum(String str){
//如果是空字符串,返回错误-1;
if(str == null)
return -1;
char[] ch = str.toCharArray();
int last = 0;
int strLength = ch.length;
for(int i=0;i<strLength;i++){
//遍历字符是不是一个数字,如果不是返回错误-1
if(ch[i]<'0' || ch[i]>'9')
return -1;
//求每一位的数,保证最低位是0
//如第一位是0,然后与temp相加,是个位数1
//到了第二次循环的时候,last变成10,然后与temp相加,变成15
//一直这样循环下去
last *= 10;
int temp = ch[i]-'0';
last += temp;
}
//最后返回last;
return last;
}
}