Java基础面试题:String 和StringBuffer的区别

package com.swift;

import java.util.Date;

public class Getclass_Test extends Date {
    public static void main(String[] args) {
        new Getclass_Test().test();
    }

    public void test() {
        System.out.println(new String("abc").equals(new String("abc")));//equals比较字符串的内容 true
        System.out.println(new StringBuffer("abc").equals(new StringBuffer("abc")));//equals比较对象的地址 false StringBuffer的equals没有复写equals
        System.out.println(new String("abc"));
    }
}

String 是final修饰的类,不能被改变,改变就是新创建对象

String str = new String(); 

for(inti=0;i<100;i++)

{

        str = str + i;

}

要创建100个对象

引用指向新的变量 ,非常消耗内存和执行时间

原文地址:https://www.cnblogs.com/qingyundian/p/8331287.html