类 String、StringBuffer、StringBuilder
类 String

String 类代表字符串。Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例实现。字符串是常量;它们的值在创建之后不能更改。字符串缓冲区支持可变的字符串。因为 String 对象是不可变的,所以可以共享。
绿色字体的方法(函数)存在重载,根据实际需求使用。
charAt(int index)
返回指定索引处的 char 值。
compareTo(String anotherString)
按字典顺序比较两个字符串。
getBytes()
使用平台的默认字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。
contentEquals(CharSequence cs)
将此字符串与指定的 CharSequence 比较。
copyValueOf(char[] data)
返回指定数组中表示该字符序列的 String。
equals(Object anObject)
将此字符串与指定的对象比较。
equalsIgnoreCase(String anotherString)
将此 String 与另一个 String 比较,不考虑大小写。
hashCode()
返回此字符串的哈希码。
indexOf(int ch)
返回指定字符在此字符串中第一次出现处的索引。
lastIndexOf(int ch)
返回指定字符在此字符串中最后一次出现处的索引。
length()
返回此字符串的长度。
subSequence(int beginIndex, int endIndex)
返回一个新的字符序列,它是此序列的一个子序列。
substring(int beginIndex)
返回一个新的字符串,它是此字符串的一个子字符串。
toCharArray()
将此字符串转换为一个新的字符数组。
toLowerCase()
使用默认语言环境的规则将此 String 中的所有字符都转换为小写。
toUpperCase()
使用默认语言环境的规则将此 String 中的所有字符都转换为大写。
trim()
返回字符串的副本,忽略前导空白和尾部空白。
valueOf(Object obj)
返回 Object 参数的字符串表示形式。
类 StringBuffer

线程安全的可变字符序列。一个类似于 String 的字符串缓冲区,但不能修改。虽然在任意时间点上它都包含某种特定的字符序列,但通过某些方法调用可以改变该序列的长度和内容。
可将字符串缓冲区安全地用于多个线程。可以在必要时对这些方法进行同步,因此任意特定实例上的所有操作就好像是以串行顺序发生的,该顺序与所涉及的每个线程进行的方法调用顺序一致。
StringBuffer 上的主要操作是 append 和 insert 方法,可重载这些方法,以接受任意类型的数据。
绿色字体的方法(函数)存在重载,根据实际需求使用。
append(CharSequence s)
将指定的 CharSequence 添加到该序列。
charAt(int index)
返回指定索引处的 char 值。
delete(int start, int end)
删除这个序列的子字符串中的字符。
deleteCharAt(int index)
删除在这个序列在指定的位置的字符。
getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
从这个序列字符复制到目标字符数组dst.
indexOf(String str)
返回索引在这个字符串的第一次出现的指定子字符串。
insert(int offset, char c)
将字符参数的字符串表示形式插入到此序列。
lastIndexOf(int ch)
返回指定字符在此字符串中最后一次出现处的索引。
setCharAt(int index, char ch)
这个字符数组在指定的索引设置为ch。
setLength(int newLength)
设置字符序列的长度。
subSequence(int beginIndex, int endIndex)
返回一个新的字符序列,它是此序列的一个子序列。
substring(int beginIndex)
返回一个新的字符串,它是此字符串的一个子字符串。
toString()
返回一个字符串,表示这个序列中的数据。
trimToSize()
试图减少存储用于字符序列。
类 StringBuilder

一个可变的字符序列。此类提供一个与 StringBuffer 兼容的 API,但不保证同步。该类被设计用作 StringBuffer 的一个简易替换,用在字符串缓冲区被单个线程使用的时候(这种情况很普遍)。如果可能,建议优先采用该类,因为在大多数实现中,它比 StringBuffer 要快。
方法(函数)和类StringBuffer的基本一致,在线程上的使用有所不同。
类 String、StringBuffer、StringBuilder的更多相关文章
- 重温java中的String,StringBuffer,StringBuilder类
不论什么一个系统在开发的过程中, 相信都不会缺少对字符串的处理. 在 java 语言中, 用来处理字符串的的类经常使用的有 3 个: String.StringBuffer.StringBuilder ...
- java中 String StringBuffer StringBuilder的区别
* String类是不可变类,只要对String进行修改,都会导致新的对象生成. * StringBuffer和StringBuilder都是可变类,任何对字符串的改变都不会产生新的对象. 在实际使用 ...
- String,StringBuffer,StringBuilder的区别
public static void main(String[] args) { String str = new String("hello...."); StringBuffe ...
- 关于String StringBuffer StringBuilder
0. String对象的创建 1.关于类对象的创建,很普通的一种方式就是利用构造器,String类也不例外:String s=new String("Hello world&qu ...
- [置顶] String StringBuffer StringBuilder的区别剖析
这是一道很常见的面试题目,至少我遇到过String/StringBuffer/StringBuilder的区别:String是不可变的对象(final)类型,每一次对String对象的更改均是生成一个 ...
- String StringBuffer StringBuilder (转)
转自:http://www.iteye.com/topic/522167 众所周知,String是由字符组成的串,在程序中使用频率很高.Java中的String是一个类,而并非基本数据类型. 不过她却 ...
- 【Java基础】String StringBuffer StringBuilder
String String是不可变的 我们都知道String不是基本数据类型,而是一个对象,并且是final类型的,不可变的.(public final class String) 查看以下代码: S ...
- String,StringBuffer,StringBuilder的区别及其源码分析
String,StringBuffer,StringBuilder的区别这个问题几乎是面试必问的题,这里做了一些总结: 1.先来分析一下这三个类之间的关系 乍一看它们都是用于处理字符串的java类,而 ...
- final,finally,finalize有什么区别?String, StringBuffer, StringBuilder有什么区别?Exception和Error有什么区别?
继上篇JVM学习之后,后面将分三期深入介绍剩余JAVA基础面试题,每期3题. 题目一.final,finally,finalize有什么区别? /*请尊重作者劳动成果,转载请标明原文链接:*/ /* ...
- 浅谈 Java 字符串(String, StringBuffer, StringBuilder)
我们先要记住三者的特征: String 字符串常量 StringBuffer 字符串变量(线程安全) StringBuilder 字符串变量(非线程安全) 一.定义 查看 API 会发现,String ...
随机推荐
- oracle新建一个表空间和用户来測试
首先对表空间作例如以下说明 暂时表空间:是在做大数据量排序时.分组操作时用的.正常这些都是在内存中完毕的.但在大数据量排序处理时.内存不够用的情况下就会用到暂时表空间,这里是不存放表的,有点类似于操作 ...
- 一个好用的短连接服务,mark备用
http://to.ly/api.php? longurl=http://www.example.com 当中http://www.example.com 是你所须要转换的长链接地址.经过一个简单的g ...
- Eclipse Mylyn成为顶级项目
http://www.infoq.com/cn/news/2010/09/eclipse-mylyn/ 作为应用程序的生命周期管理工具,Eclipse Mylyn项目已经被提升为顶级的Eclipse项 ...
- 初学spring(二)
1.spring推荐使用接口编程,配合di可以达到层与层之间解耦
- 辛星让mysql跑的更快第一节之优化的方向和数据库建模
近期计划写一套书目,也就是关于mysql的优化的.那么首先在博客上写写,然后整理成pdf的文档的形式,当然也期待各位的关注了.对于mysql的优化是一个比較大的话题.可优化的地方也非常多,大致想了一下 ...
- Mysql数据库分库备份,分表备份
分库备份 #!/bin/sh DBPATH=/server/backup MYUSER=root MYPASS=oldboy123 SOCKET=/data/3306/mysql.sock MYCMD ...
- 189. Rotate Array【easy】
189. Rotate Array[easy] Rotate an array of n elements to the right by k steps. For example, with n = ...
- tcpreplay工具安装使用
一.Tcpreplay功能简介 首先推荐一个网站:http://tcpreplay.synfin.net/ ,上面有Tcpreplay的安装包和很多文档,包括手册.man页和FAQ等. Tcprepl ...
- 用jquery替换dojo中的ajax
function getpoints(closeid) {/*获取数据列表*/ var closesid = closeid; $.ajax({ url:'*.ashx") %>?op ...
- (转载)Javascript removeChild()不能删除全部子节点的解决办法
在Javascript中,只提供了一种删除节点的方法:removeChild().removeChild() 方法用来删除父节点的一个子节点. 语法: parent.removeChild(thisN ...