/** * 自定义 string---> int做法 * @author Administrator * */ public class StringToInt { public static void main(String[] args) { String testStr = "123"; int intResult = transferStrToInt(testStr); System.out.println(intResult); /*char temp = '9'; // char temp = '0'; System.out.println((int)(temp)); // char '0' ---> int 为48 char '9' ---> 57 */ } /** * 解释: * 1 将字符串变更为字符数组 * 2判断每个字符,只能是 ['0','9']之间的字符才可以转换 * 3在乘以10的时候,需要用遍历的字符和字符0对应的int数作差后,用差额循环乘以10, * @param testStr * @return */ private static int transferStrToInt(String testStr) { final int TEN = 10; int result = 0; char[] charArr = testStr.toCharArray(); for(int i=0; i<charArr.length; i++){ char tempChar = charArr[i] ; if(tempChar - 48 < 0 || tempChar - 48>9){//[单个字符只能在0-9之间,0字符对应int数值为48] return -1; } int tempInt = tempChar - 48;// 单个字符和字符0之间的差额 for(int j = charArr.length - i - 1; j >0; j--){ tempInt *= TEN; } result += tempInt; } return result; } }
java 自定义 string---> int做法
猜你喜欢
转载自chengjianxiaoxue.iteye.com/blog/2009823
今日推荐
周排行