黑马程序员技术交流社区
标题:
数组转换成字符串 以及String和StringBuffer 哪个开发中推荐使用
[打印本页]
作者:
雨来
时间:
2015-12-21 20:20
标题:
数组转换成字符串 以及String和StringBuffer 哪个开发中推荐使用
/***
* 将一个数组转换成字符串
* 分析:将一个数组转换成字符串 数组是没有直接的方法转换成字符串的 如果遍历数组 取出第一个元素 toString 的话会产生太多的
* 垃圾 如果用StringBuffer 就只产生一个对象,不会产生太多的垃圾推荐用StringBuffer
* @author hu
* @version V1.0我也不知道
*/
public class DemoStringBuffer_ArrayToString {
/**
* @param args
*/
public static void main(String[] args) {
int [] arr = {12,15,18,22};//静态初使化一个数组
//使用方法测试
//arryToString(arr);
System.out.println(arryToString(arr));
}
//封装一个方法 把数组转换成StringBuffer 在遍历数组的同时候 用append 向字符缓冲区里添加 数组的元素 然后用toString方法
//转换成 字符串 返回值是String 参数列表是 一个数组
/**
*
* @param arr 要接收的int 类型的数组
* @return for遍历过程中追加的 数组的元素 存到字符串缓冲区StringBuffer.toString()
*/
public static String arryToString(int [] arr) {
//因为要按规定的格式输入转换后的数组
StringBuffer sb = new StringBuffer();//创建一个字符串缓冲区对象
sb.append("[");//在遍历数组之前先把左括号 打印出来
for (int i = 0; i < arr.length; i++) {
//这里我们在加一个判断 也就是 如果是数组最后个元素的话 则把右括号 也追加
if (i==arr.length-1) {//这里不要忘记了 -1 只有减去了1 i才代表是数组中的最后一个元素不然的话这个语句
//永远执行不到
sb.append(arr[i]).append("]");
}
else {
sb.append(arr[i]).append(",");
}
}//出了循环我们把得到的字符串缓冲区toString 转换成 字符串
return sb.toString();
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2