一字符串,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)+"");//0 int end=Integer.parseInt(dryNoInfo.charAt(dryNoInfo.length()-2)+"");//3 for (int i = start; i <=end; i++) { if (i>start) { sBuilder.append("|"); } sBuilder.append(i); }
(2)charToInt 可以直接使用 Character.digit(char ch, int radix);
http://tieba.baidu.com/p/2062701652
有兩種轉換方法:
一種是自動轉換,如char c = 97,會自動的將int類型的96轉換成char的‘a’
另一種是強制類型轉換,如int i = 97,char c = (char)i ,這樣做了之后,char的值也是‘a’
為什么是a呢?因為字符‘a’對應的ASCII值是97.
自動轉換一般是用於大的類型向小的類型轉換,也叫窄化轉換
強制類型轉換一般是用於小的類型向大的類型轉換,也叫擴展轉換