java中关于数组转换成字符串方法

偶然发现,字符串数组转换成字符串有点分歧。

方法一:直接用数组转字符串方法效果如下

1 char[] c1 = new char[]{'a','d','s'};
2 return = Arrays.toString(c1);

输出效果:[a, d, s]

 

方法二:使用StringBuffer转换

1 char[] c4 = new char[]{'a','d','s','a','d','s'};
2 StringBuffer sb = new StringBuffer();
3 for(int i = 1;i<c4.length;i++){
4     sb.append(c4);            
5 }
6 System.out.println(c4);

输出效果:adsads

方法三:推荐使用

1 char[] c4 = new char[]{'a','d','s','a','d','s'};
2 return new String(c4);

输出效果:adsads

原因:

String构造方法中,

String(char[] value)
          分配一个新的 String,使其表示字符数组参数中当前包含的字符序列。

 

在此,需要使用到数组转换字符串,推荐第三种方法。

 

posted on 2015-12-21 16:43  Goorwl  阅读(55344)  评论(0编辑  收藏  举报