java char[] c = a.toCharArray(); char v = a.charAt(i); 这两种解法有什么区别

如题所述

你好,首先你会发现这两个方法的返回值不同,前者是字符数组,后者是字符。下面通过一个例子来分析这两个方法:
a = "abcd" ;
a.toCharArray() ; 的返回值就是{'a','b','c','d'} ;
a.charAt(i) 注意i的取值是0~a.length-1,这里可以分别取0 1 2 3对应的返回值分别为:a b c d。
明白了吧。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-09-02
String 类有个 toCharArray() 方法.
这个方法会返回Char数组. 我一直以为这个char数组里面都是和unicode码一一对应的.
今天突然发现 这个 toCharArray() 好像是编过码的...

举个例子. unicode码为 '20C30'的字符. 很明显这是个增补字符.
//下面就是声明 unicode码 为 '20C30' 可能在你机子上表示不出来.呵呵
String a = "

char v = a.charAt(i);
的意思是把字符串a中的第i个字符赋值给字符v.
charAt()是取第几个字符的意思
第2个回答  2011-09-02
前一个是a字符串变成字符数组,后一个是读取a字符串中的第i位置的字符。
第3个回答  2011-09-02
a 是个string的方法吧 toCharArray()得到的就是 char类型的数组 charAt方法 是获得第i+1个字符 这个有什么疑问吗?
第4个回答  2011-09-02
区别很明显啊...一个返回字符数组,一个返回单个字符...
相似回答