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;

    }



}

 

你可能感兴趣的:(StringBuilder)