浅谈java中String的两种赋值方式的区别
类似普通对象,通过new创建字符串对象。如String str = "Hello"; 首先会去缓冲池中找有没有一个"Hello"对象,如果没有,则新建一个,并且入池,所以此种赋值有一个好处,下次如果还有String对象也用直接赋值方式定义为“Hello”, 则不需要开辟新的堆空间,而仍然指向这个池中的"Hello"解释l 字符串的内容是存放在方法区的字符串常量池的,没有的时候就新建一个,已经存在的时候就直接指过去。l String str1 = “AA”,这种是直接操作字符串常量池指过去;String str2 = new String;这种是先在堆空间开辟这个类的对象,实际上在内部还是指到了字符串常量池;测试结果以上就是本文关于浅谈java中String的两种赋值方式的区别的全部内容,希望对大家有所帮助。
下载地址
用户评论