您的位置:首页 > 编程语言 > Java开发

JAVA学习记录 -- String

2016-02-21 18:51 585 查看

JAVA学习记录 – String

JAVA学习记录 String
String对象创建

String拼接

String对象创建

String对象的创建既可以按照
String a = "abc"
的方式,也可以按照
String a = new String("abc")
的方式创建。无论是哪种方式,创建的string对象都是指向JVM里面存储的内容。所以不能使用
==
和’!=’来判定string对象是否相等,因为使用
==
!=
比较的是对象的地址。而同一个对象在JVM中一般情况下都是同一个地址的。应使用
equals
等进行比较1

String拼接

String对象的拼接可以使用
+
StringBuilder
StringBuffer
这三种方式。

对于使用
+
这种方式,实际上是在每次链接字符串时构建新的string对象,这样既耗时又浪费空间,不推荐使用。

StringBuffer是多线程安全的,源码中的很多方法都是用关键字
synchronized
修饰的,效率会低一些。

StringBuilder是JDK5.0引入的,和StringBufferd的实现类似,只是StringBuilder不是多线程安全的,安全性要比StringBuffer差,效率要比StringBuffer高一些。StringBuilder可以和关键字
synchronized
配合使用达到多线程安全。在非特殊需求的情况下,推荐使用StringBuilder。

如果string对象比较时,如果其中一个是常量,好的习惯是
"abc".equals(a)
,而不是
a.equals("abc")
,这样可以避免string对象为null时抛出异常的情况。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  string java