java博客七目

1. 借助JDK文档, 选取StringStringBuffer StringBuilder的常用API,并编写实例测试API的功能。


2. 请简述StringStringBufferStringBuilder三者之间的共同点与区别,应该分别在何种场景下使用?

相同点:
1、内部实现基于字符数组,封装了对字符串处理的各种操作
2、可自动检测数组越界等运行时异常

不同点:
1、String内部实现基于常量字符数组,内容不可变;
StringBuffer、StringBuilder基于普通字符数组,数组大小可根据字符串的实际长度自动扩容,内容可变
2、性能方面,对于字符串的处理,相对来说
StringBuilder >StringBuffer>String
3、StringBuffer线程安全;StringBuilder非线程安全

使用场景:
String:对安全要求更高。
StringBuffer、StringBuilder:对性能要求更高

3. 为什么不建议在for循环中使用“+”进行字符串拼接?

String对象是不可变的,在String类中每一个 看起来会修改String对象内容的方法,实质都是创建了一个全新的对象。
所以在for循环中每使用一次"+"运算符进行字符串拼接都创建了一个对象,随着循环次数的增加,创建的对象也随之增加,所占内存过多。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

42的答案

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值