difference among String,StringBuilder,StringBuffer

String常用构造函数

 String(byte[] bytes)

 String(byte[] bytes, int offset, int length)

 String(char[] value)

 String(char[] value, int offset, int count)

 String(int[] codePoints, int offset, int count)

 String(String original)

 String(StringBuffer buffer)

 String(StringBuilder builder)
Modifier and Type Method and Description
char charAt(int index)

Returns the char value at the specified index.
int codePointAt(int index)

Returns the character (Unicode code point) at the specified index.
int codePointBefore(int index)

Returns the character (Unicode code point) before the specified index.
int codePointCount(int beginIndex, int endIndex)

Returns the number of Unicode code points in the specified text range of this String.
int compareTo(String anotherString)

Compares two strings lexicographically.
int compareToIgnoreCase(String str)

Compares two strings lexicographically, ignoring case differences.
String concat(String str)

Concatenates the specified string to the end of this string.
boolean contains(CharSequence s)

Returns true if and only if this string contains the specified sequence of char values.
boolean contentEquals(CharSequence cs)

Compares this string to the specified CharSequence.
boolean contentEquals(StringBuffer sb)

Compares this string to the specified StringBuffer.
static String copyValueOf(char[] data)

Equivalent to valueOf(char[]).
static String copyValueOf(char[] data, int offset, int count)

boolean endsWith(String suffix)

Tests if this string ends with the specified suffix.
boolean equals(Object anObject)

Compares this string to the specified object.
boolean equalsIgnoreCase(String anotherString)

Compares this String to another String, ignoring case considerations.
static String format(Locale l, String format, Object... args)

Returns a formatted string using the specified locale, format string, and arguments.
static String format(String format, Object... args)

Returns a formatted string using the specified format string and arguments.
byte[] getBytes()

Encodes this String into a sequence of bytes using the platform's default charset, storing the result into a new byte array.
byte[] getBytes(Charset charset)

Encodes this String into a sequence of bytes using the given charset, storing the result into a new byte array.
   
byte[] getBytes(String charsetName)

Encodes this String into a sequence of bytes using the named charset, storing the result into a new byte array.
void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)

Copies characters from this string into the destination character array.
int hashCode()

Returns a hash code for this string.
int indexOf(int ch)

Returns the index within this string of the first occurrence of the specified character.
int indexOf(int ch, int fromIndex)

Returns the index within this string of the first occurrence of the specified character, starting the search at the specified index.
int indexOf(String str)

Returns the index within this string of the first occurrence of the specified substring.
int indexOf(String str, int fromIndex)

Returns the index within this string of the first occurrence of the specified substring, starting at the specified index.
String intern()

Returns a canonical representation for the string object.
boolean isEmpty()

Returns true if, and only if, length() is 0.
static String join(CharSequence delimiter, CharSequence... elements)

Returns a new String composed of copies of the CharSequence elements joined together with a copy of the specified delimiter.
static String join(CharSequence delimiter, Iterable<? extends CharSequence> elements)

Returns a new String composed of copies of the CharSequence elements joined together with a copy of the specified delimiter.
int lastIndexOf(int ch)

Returns the index within this string of the last occurrence of the specified character.
int lastIndexOf(int ch, int fromIndex)

Returns the index within this string of the last occurrence of the specified character, searching backward starting at the specified index.
int lastIndexOf(String str)

Returns the index within this string of the last occurrence of the specified substring.
int lastIndexOf(String str, int fromIndex)

Returns the index within this string of the last occurrence of the specified substring, searching backward starting at the specified index.
int length()

Returns the length of this string.
boolean matches(String regex)

Tells whether or not this string matches the given regular expression.
int offsetByCodePoints(int index, int codePointOffset)

Returns the index within this String that is offset from the given index by codePointOffset code points.
boolean regionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len)

Tests if two string regions are equal.
boolean regionMatches(int toffset, String other, int ooffset, int len)

Tests if two string regions are equal.
String replace(char oldChar, char newChar)

Returns a string resulting from replacing all occurrences of oldChar in this string with newChar.
String replace(CharSequence target, CharSequence replacement)

Replaces each substring of this string that matches the literal target sequence with the specified literal replacement sequence.
String replaceAll(String regex, String replacement)

Replaces each substring of this string that matches the given regular expression with the given replacement.
String replaceFirst(String regex, String replacement)

Replaces the first substring of this string that matches the given regular expression with the given replacement.
String[] split(String regex)

Splits this string around matches of the given regular expression.
String[] split(String regex, int limit)

Splits this string around matches of the given regular expression.
boolean startsWith(String prefix)

Tests if this string starts with the specified prefix.
boolean startsWith(String prefix, int toffset)

Tests if the substring of this string beginning at the specified index starts with the specified prefix.
CharSequence subSequence(int beginIndex, int endIndex)

Returns a character sequence that is a subsequence of this sequence.
String substring(int beginIndex)

Returns a string that is a substring of this string.
String substring(int beginIndex, int endIndex)

Returns a string that is a substring of this string.
char[] toCharArray()

Converts this string to a new character array.
String toLowerCase()

Converts all of the characters in this String to lower case using the rules of the default locale.
String toLowerCase(Locale locale)

Converts all of the characters in this String to lower case using the rules of the given Locale.
String toString()

This object (which is already a string!) is itself returned.
String toUpperCase()

Converts all of the characters in this String to upper case using the rules of the default locale.
String toUpperCase(Locale locale)

Converts all of the characters in this String to upper case using the rules of the given Locale.
String trim()

Returns a string whose value is this string, with any leading and trailing whitespace removed.
static String valueOf(boolean b)

Returns the string representation of the boolean argument.
static String valueOf(char c)

Returns the string representation of the char argument.
static String valueOf(char[] data)

Returns the string representation of the char array argument.
static String valueOf(char[] data, int offset, int count)

Returns the string representation of a specific subarray of the char array argument.
static String valueOf(double d)

Returns the string representation of the double argument.
static String valueOf(float f)

Returns the string representation of the float argument.
static String valueOf(int i)

Returns the string representation of the int argument.
static String valueOf(long l)

Returns the string representation of the long argument.
static String valueOf(Object obj)

Returns the string representation of the Object argument.

StringBuffer和StringBuilder的对象是变量,所以效率要比String要高,java虚拟机不需要回收。

序号 方法描述
1 public StringBuffer append(String s)
将指定的字符串追加到此字符序列。
2 public StringBuffer reverse()
 将此字符序列用其反转形式取代。
3 public delete(int start, int end)
移除此序列的子字符串中的字符。
4 public insert(int offset, int i)
将 int 参数的字符串表示形式插入此序列中。
5 replace(int start, int end, String str)
使用给定 String 中的字符替换此序列的子字符串中的字符。
序号 方法描述
1 int capacity()
返回当前容量。
2 char charAt(int index)
返回此序列中指定索引处的 char 值。
3 void ensureCapacity(int minimumCapacity)
确保容量至少等于指定的最小值。
4 void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
将字符从此序列复制到目标字符数组 dst
5 int indexOf(String str)
返回第一次出现的指定子字符串在该字符串中的索引。
6 int indexOf(String str, int fromIndex)
从指定的索引处开始,返回第一次出现的指定子字符串在该字符串中的索引。
7 int lastIndexOf(String str)
返回最右边出现的指定子字符串在此字符串中的索引。
8 int lastIndexOf(String str, int fromIndex)
返回最后一次出现的指定子字符串在此字符串中的索引。
9 int length()
 返回长度(字符数)。
10 void setCharAt(int index, char ch)
将给定索引处的字符设置为 ch
11 void setLength(int newLength)
设置字符序列的长度。
12 CharSequence subSequence(int start, int end)
返回一个新的字符序列,该字符序列是此序列的子序列。
13 String substring(int start)
返回一个新的 String,它包含此字符序列当前所包含的字符子序列。
14 String substring(int start, int end)
返回一个新的 String,它包含此序列当前所包含的字符子序列。
15 String toString()
返回此序列中数据的字符串表示形式。

public StringBuffer deleteCharAt(int index)

public void trimToSize()

difference among String,StringBuilder,StringBuffer的更多相关文章

  1. 深入源码剖析String,StringBuilder,StringBuffer

    [String,StringBuffer,StringBulider] 深入源码剖析String,StringBuilder,StringBuffer [作者:高瑞林] [博客地址]http://ww ...

  2. String, StringBuilder, StringBuffer问题

    1. 区别 String为字符串常量,而StringBuilder和StringBuffer都是字符串变量,其中StringBuilder线程非安全,StringBuffer线程安全. 每次对 Str ...

  3. String StringBuilder StringBuffer区别

    String StringBuilder StringBuffer String类是final类,不可以被继承,且它的成员方法也是final方法,当一个字符串对象进行操作操作时,任何的改变不会影响到这 ...

  4. JDK源码分析系列---String,StringBuilder,StringBuffer

    JDK源码分析系列---String,StringBuilder,StringBuffer 1.String public final class String implements java.io. ...

  5. java中String StringBuilder StringBuffer比较和效率(性能)测试

    string stringbuilder stringbuffer三者的区别 从JDK源码看,String.StringBuilder.StringBuffer都是存放在char[] 数组字符串. 简 ...

  6. string,stringbuilder,stringbuffer用法

    总结:1.如果要操作少量的数据用 = String   ==================================>字符串常量2.单线程操作字符串缓冲区 下操作大量数据 = Strin ...

  7. java中string stringbuilder stringbuffer 的区别

    1. String 类 String的值是不可变的,这就导致每次对String的操作都会生成新的String对象,不仅效率低下,而且大量浪费有限的内存空间. String a = "a&qu ...

  8. String,StringBuilder,StringBuffer

    (转:http://blog.csdn.net/rmn190/article/details/1492013)   String 字符串常量StringBuffer 字符串变量(线程安全)String ...

  9. String Stringbuilder Stringbuffer的区别

    String 字符串常量StringBuffer 字符串变量(线程安全)StringBuilder 字符串变量(非线程安全) 简要的说, String 类型和 StringBuffer 类型的主要性能 ...

随机推荐

  1. zhuan 常用图像数据集:标注、检索

      目录(?)[+]   1.搜狗实验室数据集: http://www.sogou.com/labs/dl/p.html 互联网图片库来自sogou图片搜索所索引的部分数据.其中收集了包括人物.动物. ...

  2. laravel处理菜单保持的方法:

    <!-- 左侧菜单区域 --> <div class="col-md-3"> @section('leftmenu') <div class=&quo ...

  3. 网卡驱动-BD详解(缓存描述符 Buffer Description)

    DMA介绍(BD的引入) 网络设备的核心处理模块是一个被称作 DMA(Direct Memory Access)的控制器,DMA 模块能够协助处理器处理数据收发.对于数据发送来说,它能够将组织好的数据 ...

  4. Uva LA 3902 - Network 树形DP 难度: 0

    题目 https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_pr ...

  5. POJ 1840 Eqs 解方程式, 水题 难度:0

    题目 http://poj.org/problem?id=1840 题意 给 与数组a[5],其中-50<=a[i]<=50,0<=i<5,求有多少组不同的x[5],使得a[0 ...

  6. bzoj3277

    题解: 后缀自动机 然后抄了一发题解 可以看看这个博客:http://blog.csdn.net/clover_hxy/article/details/53861268 代码: #include< ...

  7. Could not load driverClass ${driverClassName} 的解决方案

          对项目进行ssm整合的过程中,发现报这个错误:Could not load driverClass ${driverClassName} 不明所以,在网上找了半天,各种答案都有,最后终于找 ...

  8. TiDB 深度实践之旅--真实“踩坑”经历

    美团点评 TiDB 深度实践之旅(9000 字长文 / 真实“踩坑”经历) 4   PingCAP · 154 天前 · 3956 次点击 这是一个创建于 154 天前的主题,其中的信息可能已经有所发 ...

  9. Codeforces Round #496 (Div. 3 ) E1. Median on Segments (Permutations Edition)(中位数计数)

    E1. Median on Segments (Permutations Edition) time limit per test 3 seconds memory limit per test 25 ...

  10. Java语法基础学习DayTwo

    一.数据类型补充问题 数据类型的自动转换等级: byte,short,char -- int -- long -- float -- double long是8个字节,float是4个字节,为什么是这 ...