java基础知识回顾之---java StringBuffer,Stringbuilder与String的区别

public class StringBuilderTest {

    /**
     * StringBuffer和Stringbuilder :使用与内容可以被修改的字符串
     * 与String的区别:String是内容不可以修改的字符串。根据下面的例子知道,
     * 当你知道字符数据要改变的时候用StringBuffer和Stringbuilder,效率高
     */
    public static void main(String[] args) {

        int[] arr = {3,1,5,3,8};
        String s = arrayToString_2(arr);
        
        System.out.println(s);
    }
    /**
     * 把数组的元素都拼起来,一次性装入StringBuilder中,只创建了一个对象。
     * @param arr
     * @return
     */
    public static String arrayToString_2(int[] arr){
        
        StringBuilder sb = new StringBuilder();//使用StringBulider
        sb.append("[");
        for (int i = 0; i < arr.length; i++) {
            if(i!=arr.length-1)
                sb.append(arr[i]+", ");
            else
                sb.append(arr[i]+"]");
        }
        return sb.toString();
    }
    
    
    /**
     * 将一个int数组变成字符串,字符串连接方法,每次连接都会在字符串常量池中开辟内存,至少开辟了5个空间,效率低
     */
    public static String arrayToString(int[] arr){
        
        String str = "[";
        for (int i = 0; i < arr.length; i++) {
            if(i!=arr.length-1)
                str+=arr[i]+", ";
            else
                str+=arr[i]+"]";
        }
        
        return str;
    }

}

 

 
posted @ 2014-07-29 12:40  积淀  阅读(191)  评论(0编辑  收藏  举报