A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

©   /  2019-4-10 18:24  /  2506 人查看  /  39 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 王卓立 于 2019-5-22 21:38 编辑

1.String类是基本数据类型还是引用数据类型?为什么字符串的长度不可变?

引用数据类型,底层是char数组,因此不可直接修改长度

2.String s = new String("abc");这句代码创建了几个对象?分别在内存中的哪个区域创建?

   String s = "abc";创建了几个对象,分别在内存中的哪个区域创建?

两个个对象,分别在堆内存和字符串常量池

3.StringBuilder的作用,为什么要使用StringBuilder

StringBuilder 是一个可变的字符串类,我们可以把它看成是一个容器,这个类可以对string字符串进行修改

当字符串需要进行频繁修改时,使用StringBuilder性能更好,不会创建新的对象

点评

String s = new String("abc")是创建了两个对象,一个在堆中,一个在常量池中  发表于 2019-4-11 11:25
回复 使用道具 举报
王卓立 发表于 2019-4-10 21:32
1.String类是基本数据类型还是引用数据类型?为什么字符串的长度不可变?

引用数据类型,底层是char数组,因 ...

收到,多谢指正
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马