一字符串,String=“2324234535”;
把第i个数取出来时是char型的:char temp=String.charAt(i)如何把char型转换成int型?我需要求个尾数之和,如:123的各位数之和为6.每个字符取出来,得到char型的1,2,3,4,5;但是求和得到的结果是ASCII码值处理办法:(1)把char转成字符串, Integer.parseInt(""+'1')
或String a = "12345";int d = Integer.parseInt(String.valueOf(a.charAt(2)));int c = Integer.parseInt(String.valueOf(a.charAt(3)));System.out.println(d * c);demo://[0..3]int start=Integer.parseInt(dryNoInfo.charAt(1)+"");//0int end=Integer.parseInt(dryNoInfo.charAt(dryNoInfo.length()-2)+"");//3for (int i = start; i <=end; i++) { if (i>start) { sBuilder.append("|"); } sBuilder.append(i); }
(2)charToInt 可以直接使用 Character.digit(char ch, int radix);
有两种转换方法:
一种是自动转换,如char c = 97,会自动的将int类型的96转换成char的‘a’另一种是强制类型转换,如int i = 97,char c = (char)i ,这样做了之后,char的值也是‘a’为什么是a呢?因为字符‘a’对应的ASCII值是97.自动转换一般是用于大的类型向小的类型转换,也叫窄化转换强制类型转换一般是用于小的类型向大的类型转换,也叫扩展转换