- 浏览: 73180 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (74)
- core Java (14)
- html (2)
- javascript (5)
- database (6)
- Design Patterns (4)
- spring (6)
- XML (0)
- other (1)
- application (1)
- Linux (Fedora 14) (1)
- Hibernate (6)
- tools (5)
- JBoss7 (1)
- J2EE (1)
- Concurrency (5)
- Linux (5)
- CSS (1)
- English (1)
- Python/Go/Shell (1)
- Container (1)
- Cloud (0)
- Kubernetes (1)
- Mac (1)
- Golang (1)
最新评论
-
MySSH:
但是我是用的eclipse-SDK-3.5.2的,里面没有or ...
jQuery 工具安装-jqueryWTP -
2022228:
废话,浪费资源
Runnable and Thread
StringBuilder是在1.5版本时出现的,是StringBuffer的改进型,速度有所提高,但不支持线程同步了。
所以如果在多线程中使用,还是得用StringBuffer。
那么让我们比较一下两个类,以append方法为例
public final class StringBuffer extends AbstractStringBuilder implements java.io.Serializable, CharSequence { public synchronized StringBuffer append(String str) { super.append(str); return this; } } public final class StringBuilder extends AbstractStringBuilder implements java.io.Serializable, CharSequence { public StringBuilder append(String str) { super.append(str); return this; } }
区别在于synchronized 关键字。
API:
http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/StringBuilder.html
发表评论
-
Security / SSL
2016-08-30 17:31 486https://www.ssllabs.com/ssltest ... -
Java Shift Operator (signedLeftShift, signedRightShift, unsignedRightShift)
2015-03-11 11:33 488Java Shift Operator ( << ... -
File.separator vs File.pathSeparator
2014-02-24 16:51 805See: http://stackoverflow.com/ ... -
InheritableThreadLocal & ThreadLocal
2014-01-07 12:11 2596InheritableThreadLocal比Thread ... -
Java Concurrency In Practice Contents
2013-12-24 17:35 0Chapter 1 - Introduction 1 1. ... -
[转] Explain Java Encapsulation & Polymorphism & Inheritance
2013-11-01 15:02 1205Encapsulation - Hiding the i ... -
Java Create Instance Method
2013-10-22 19:04 686Java Create Instance Method ... -
Object Methodes: equals and hashCode
2013-09-10 17:31 703今天看了Object的equals() and hashC ... -
coreJava: serialVersionUID
2011-12-09 19:25 836Eclipse会检查serialVersionUI ... -
Eclipse Tools
2011-10-13 22:55 5071. Eclipse New 菜单配置 Window --& ... -
笔试题笔记
2011-07-27 23:50 3381. 请说出DOM和SAX的技术异同点 DOM先要生成DOM ... -
转载:Java程序员需要注意的十项
2010-11-07 16:03 0From: 10 Commandments for Java ... -
temp
2010-05-30 01:40 0Dojo -------------------------- ... -
练习BigDecimel and Regular Expression
2010-05-18 17:11 1221程序需求:http://joezxy.iteye.com/bl ... -
fillter in web.xml
2009-09-14 18:48 0参考文献: http://javaworld.com.tw/ ... -
Java Collections
2009-09-06 11:00 0资料来源于网上。 结构图: -
Java Collections(一): Set/List/Map
2009-09-05 20:24 0Collection: public interfac ... -
JSTL 版本选择 2.4&2.3
2009-08-25 12:01 3542JSTL与Servlet版本对映 整 ... -
java note from web
2007-08-11 15:55 6531.什么是模式?什么是框架? 模式,即pattern。其实就 ... -
Runnable and Thread
2009-07-29 15:30 5625今天看了源码,总算多少理解一点,对Runnable 和 Thr ...
相关推荐
`String`、`StringBuffer`和`StringBuilder`都是用于构建和操作字符串的类,但它们之间存在重要的差异。这些差异主要体现在对象的不可变性、线程安全性和性能方面。 首先,`String`类是最基础的字符串类,它的特点...
3. **String与StringBuffer的区别**:String对象一旦创建就不能更改,而StringBuffer或StringBuilder对象则可以在原有基础上追加或修改内容。在处理大量字符串拼接时,使用StringBuffer或StringBuilder更为高效。 4...
在字符串操作方面,String、StringBuffer和StringBuilder的区别是面试时经常被问到的问题。String是不可变的字符串,每次修改都会生成新的字符串对象。StringBuffer和StringBuilder则是可以修改内容的字符串缓冲区。...
String 是不可变的,Stringbuffer 和 StringBuilder 是可变的。Stringbuffer 是线程安全的,而 StringBuilder 不是。 4. ArrayList 和 LinkedList 有什么区别。 ArrayList 是基于数组实现的,LinkedList 是基于...
String 是不可变的字符串对象,StringBuffer 和 StringBuilder 是可变的字符串对象。StringBuffer 是线程安全的,而 StringBuilder 不是。 7. Java 异常处理 Java 异常处理机制包括 try-catch-finally 结构。try ...
2. String、StringBuffer、StringBuilder的区别:String是不可变对象,StringBuffer和StringBuilder是可变对象,StringBuffer是线程安全的,而StringBuilder不是。 3. int和Integer的区别:int是基本数据类型,...
StringBuffer、StringBuilder 和 String 都是 Java 中的字符串类,但是它们有所不同。String 是不可变的,意味着一旦创建就不能修改。StringBuffer 和 StringBuilder 是可变的,意味着可以修改。StringBuffer 是线程...
- StringBuffer和StringBuilder都是可变的,它们在字符串操作中提供了更高的性能,尤其是多线程环境下推荐使用StringBuffer,因为它线程安全;单线程环境中StringBuilder效率更高。 5. Hashtable与HashMap的区别:...
String是不可变的,而StringBuffer和StringBuilder是可变的。StringBuffer是线程安全的,而StringBuilder是线程不安全的。 7. **Java中的静态和final关键字**: static表示静态,可以用来修饰类的属性和方法,...
StringBuffer、StringBuilder和String都是Java中的字符串处理类,但它们有不同的特点: * String:不可变字符串,所有操作都会生成新的字符串 * StringBuffer:可变字符串,多线程安全,同步锁机制 * StringBuilder...
4. **StringBuffer/StringBuilder与String的区别**:String是不可变的,每次修改都会创建新对象,而StringBuilder/StringBuffer是可变的,修改时不会创建新对象,适合大量字符串操作,尤其在多线程环境下使用...
`StringBuffer`和`StringBuilder`可变,它们在内存中直接修改,`StringBuffer`在多线程环境下是线程安全的,`StringBuilder`则不是,但在单线程环境中性能优于`StringBuffer`。 7. **字符串反转**:可以使用`...
- 使用StringBuilder或StringBuffer进行字符串拼接,避免大量的字符串连接操作导致的内存开销。 8. **错误处理**: - 需要对输入数据进行有效性检查,如检查金额是否为合法的数字,日期是否符合格式等,并在出现...
String类是不可变的,因此对于频繁变更的字符串操作,推荐使用StringBuffer或StringBuilder。 3. int是Java的原始数据类型,而Integer是int的封装类。原始类型存储的是具体的数值,而封装类是对象,可以赋予null值...
String、StringBuilder和StringBuffer是用于字符串操作的类,其中String是不可变的,而StringBuilder和StringBuffer是可变的,StringBuffer比StringBuilder更慢但线程安全。 18. Java的数据类型:Java的基本数据...
#### String、StringBuffer、StringBuilder的区别 - **String**:不可变字符串,适合频繁读取但不修改的场景。每次修改都会创建一个新的对象,影响性能。 - **StringBuffer**:线程安全的可变字符串,适用于多线程...
4. **StringBuffer/StringBuilder与String的区别**:两者都是可变字符序列,但StringBuilder在单线程环境下效率更高,因为它不保证线程安全,而StringBuffer在多线程环境下更合适,因为它提供了同步方法。...
在Java中,我们可以使用StringBuilder或StringBuffer类进行字符串拼接。例如,如果你有一个SQL插入语句,你可能会这样做: ```java StringBuilder sql = new StringBuilder(); sql.append("INSERT INTO table_name ...