2013-05-01 73 views
0

我从字符串中取出子串并且必须将每个字符存储在Arraylist中。 对于给定的String实例是字符串的子串和存储在字符中

String s= "abc"; 

我把ArrayList和存储循环使用字符串为

ArrayList<Character> input = new ArrayList<Character>(); 
for (int i=0; i<s.length();i++) 
{ 
    input= input.add(s.substring(i,1)); 
} 

我得到错误

Add方法(汉字)在得到a b c as characters类型ArrayList不适用于参数(字符串)

如何将它转换成char我想简单的类型转换,但没有奏效

回答

3

String.substring()返回String,而不是一个字符。试试这个:

for (int i = 0; i < str.length(); i ++) { 
    char ch = str.charAt(i); 
    // do something with it 
} 
+0

所以,当我做到这一点CH = s.charAt(我); \t \t input.add(ch); \t \t System.out.print(input);输出是[a] [a,b] [a,b,c]为什么这些[]围绕abc? – Sikander 2013-05-01 08:15:32

+0

原因是ArrayList喜欢自己打印。别担心。 – iluxa 2013-05-01 08:16:28

+0

所以当我使用这些值进一步它不会考虑这些[]和“,”只会使用一个B C? – Sikander 2013-05-01 08:17:36

0

你需要一个字符添加到ArrayList试试下面:

for (int i=0; i<s.length();i++) 
{ 
    input= input.add(new Character(s.charAt(i)); 

}