黑马程序员技术交流社区

标题: 关于字符串的面试题! [打印本页]

作者: Accoss-x    时间: 2015-12-27 23:48
标题: 关于字符串的面试题!
本帖最后由 Accoss-x 于 2015-12-28 01:39 编辑

        字符串一旦初始化就不可以改变        String s = new String("abc");与String s1 = "abc";的区别
        第一种,在内存中有俩个对象存在,第二种在内存中只有一个对象存在。
        第一种当用new关键字时,在堆内存中创建了一个对象
然后在在方法区中的字符串常量池创建了abc这个对象,然后把对象abc的
地址传给new String(),然后再把new String()的地址在传递给s。
         第二种是先查看字符串常量池中是否有abc,如果有就直接指向,如果没有、则在字符串常量池中创建abc。
String s = null;表示s这个对象不存在。
         isEmpty()是判断字符串中是否有数据,如果有则返回false

作者: 呵呵1122    时间: 2015-12-28 08:59
学习学习
作者: 小新没蜡笔    时间: 2015-12-28 11:20
字符串是被fanal修饰的




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2