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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 秦二江 中级黑马   /  2013-3-15 13:42  /  1435 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 秦二江 于 2013-4-9 13:26 编辑

如果hello 中的 e  改为 h l类似这样的 字符串操作 用 StringBuilder  节收改变后的 字符串,是不是要比string 接受要好勒

评分

参与人数 1技术分 +1 收起 理由
张文 + 1

查看全部评分

2 个回复

倒序浏览
一个String对象的长度是固定的,不能改变它的内容,每次使用

String 类中的方法之一时,都要在内存中创建一个新

的字符串对象,然后将指针指向新的 String 对象,在面向对

象的程序设计中,最好是能重复运用已有的对象,因为对象的

生成需要内存空间与时间,不断地产生新的对象是一个没有效

率的行为,所以经常改变内容的字符串最好不要用String,而

java.lang.StringBuilder是一个线程不安全的可变的字符序列

,如果有频繁作字符串修改的需求,使用StringBuilder会让程

序的效率大大提高。

评分

参与人数 1技术分 +1 收起 理由
张文 + 1

查看全部评分

回复 使用道具 举报
StringBuilder和String对象都可以很方便的处理字符串,他们具备各自的特点,如下:

  System.String具有以下五个特点:

1.  String是引用类型,在堆上分配内存。

2.  String对象一旦生成,就不可改变(Immutable)。

3.  String提供了大量便捷的字符串操作函数。

4.  String运算时会产生一个新的实例。

5. 在程序中定义相等运算符(==)和(!=),可以方便比较String对象的值(而不是引用)。

StringBuilder具有以下两个特点:

StringBuilder对象是动态对象,允许扩充它所封装的字符串中的字符数量。

StringBuilder可以用于修改StringBuilder中的内容

评分

参与人数 1技术分 +1 收起 理由
张文 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马