首页 > 代码库 > Java String类具体解释

Java String类具体解释

Java String类具体解释

Java字符串类(java.lang.String)Java中使用最多的类,也是最为特殊的一个类,非常多时候,我们对它既熟悉又陌生。


类结构:


public final classString

extendsObject

implementsSerializable,Comparable<String>,CharSequence


类概述:


 Java程序中的全部字面值(string literals),即双引號括起的字符串,如"abc",都是作为String类的实例实现的。

  String是常量,其对象一旦构造就不能再被改变。换句话说,String对象是不可变的,每个看起来会改动String值的方法,实际上都是创造了一个全新的String对象,以包括改动后的字符串内容。

String对象具有仅仅读特性,指向它的不论什么引用都不可能改变它的值,因此,也不会对其它的引用有什么影响。


构造方法:


Public Constructors

 

String()

构造一个空字符串。

 

String(byte[] data)

将字节数组转换为字符串使用系统的default charset(通过byte数组构造字符串对象。)

 

String(byte[] data, int offset, int byteCount)

将字节数组中指定字节转换成字符串。

 

String(byte[] data, int offset, int byteCount, String charsetName)

使用指定的字符集,将字节数组中指定字节转换成字符串。

 

String(byte[] data, String charsetName)

使用指定的字符集,将字节数组转换成一个字符串。

 

String(byte[] data, int offset, int byteCount, Charset charset)

使用指定的字符集,将字节数组中指定字节转换成字符串。

 

String(byte[] data, Charset charset)

使用指定的字符集,将字节数组转换成字符串。

 

String(char[] data)

将字符数组转换成字符串

 

String(char[] data, int offset, int charCount)

将字符数组中指定字符转换成字符串。

 

String(String toCopy)

构造一个toCopy的副本。即:拷贝一个toCopy

 

String(StringBuffer stringBuffer)

StringBuffer转换成字符串。

 

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

 分配一个String,它包括该 Unicode 代码点数组參数的一个子数组的字符。

 

String(StringBuilder stringBuilder)

StringBuilder 转换成字符串。


经常使用公有方法:


Public Methods

char

charAt(int index)

取字符串中的某一个字符,当中的參数index指的是字符串中序数。字符串的序数从0開始到length()-1

int

compareTo(String anotherString)

当前String对象与anotherString比較相等返回0不相等时,从两个字符串第0个字符開始比較,返回第一个不相等的字符差,还有一种情况,较长字符串的前面部分恰巧是较短的字符串,返回它们的长度差。

String

concat(String str)

将该String对象与str连接在一起。提示:通过“+”串联更方便。

boolean

contentEquals(CharSequence cs)

将该String对象与CharSequence 对象cs进行比較。相等返回true

boolean

contentEquals(StringBuffer strbuf)

将该String对象与StringBuffer 对象strbuf 进行比較。相等返回true

static String

copyValueOf(char[] data, int start, int length)

char数组中指定字符转换成String

static String

copyValueOf(char[] data)

char数组转换成String

boolean

endsWith(String suffix)

推断该字符串是否以suffix结尾。是返回true

boolean

equals(Object anObject)

anObject不为空而且与当前String对象一样,返回true;否则,返回false

boolean

equalsIgnoreCase(String string)

比較字符串与another是否一样(忽略大写和小写)。

byte[]

getBytes(String charsetName)

使用指定字符集,将该String对象转换成byte数组。

byte[]

getBytes(Charset charset)

使用指定字符集,将该String对象转换成byte数组。

byte[]

getBytes()

将该String对象转换成byte数组,使用默认字符集。

void

getChars(int start, int end, char[] buffer, int index)

将字符串复制到字符数组中。当中,start为拷贝的起始位置、end为拷贝的结束位置、字符串数值buffer为目标字符数组、index为目标字符数组的拷贝起始位置。

int

hashCode()

返回当前字符的哈希表码。

int

indexOf(int c)

自左向右仅仅找第一个匹配字符位置。

int

indexOf(int c, int fromIndex)

fromIndex開始自左向右找第一个匹配字符位置。

int

indexOf(String subString, int fromIndex)

fromIndex開始自左向右找第一个匹配字符串位置。

int

indexOf(String string)

自左向右查找第一个匹配字符串位置。

boolean

isEmpty()

假设字符串的长度为0,则返回true

int

lastIndexOf(String string)

自右向左查找第一个匹配字符串位置。

int

lastIndexOf(int c, int fromIndex)

fromIndex開始自右向左找第一个匹配字符串位置。

int

lastIndexOf(int c)

自右向左查找第一个匹配字符位置。

int

lastIndexOf(String subString, int start)

fromIndex開始自右向左找第一个匹配字符串位置。

int

length()

返回字符串的字符个数。

boolean

regionMatches(boolean ignoreCase, int thisStart, String string, int start, int length)

用于比較一个字符串中特定区域与还有一特定区域。參数ignoreCase:是否同意在比較中忽略大写和小写。假设匹配返回true

boolean

regionMatches(int thisStart, String string, int start, int length)

用于比較一个字符串中特定区域与还有一特定区域。假设匹配返回true

String

replace(CharSequence target, CharSequence replacement)

将字符号串中的target替换成replacement

String

replace(char oldChar, char newChar)

将字符号串中的oldChar替换成newChar

String

replaceAll(String regularExpression, String replacement)

将符合regularExpression (增则表达式)的内容都替换成replacement

String

replaceFirst(String regularExpression, String replacement)

仅仅将第一个符合regularExpression (增则表达式)的内容都替换成replacement

String[]

split(String regularExpression)

将一个字符串依照指定的分隔符分隔,返回分隔后的字符串数组。

String[]

split(String regularExpression, int limit)

将一个字符串依照指定的分隔符分隔,返回分隔后的字符串数组。当中參数:limit控制模式应用的次数,因此影响结果数组的长度。假设该限制 n 大于 0,则模式将被最多应用 n - 1 次,数组的长度将不会大于 n,并且数组的最后项将包括超出最后匹配的定界符的全部输入。假设 n 为负,则模式将被应用尽可能多的次数,而且结尾空字符串将不会被丢弃。假设 n为零,则模式将被应用尽可能多的次数。

boolean

startsWith(String prefix)

String对象是否以prefix開始。

boolean

startsWith(String prefix, int start)

String对象从toffset位置算起,是否以prefix開始。

CharSequence

subSequence(int start, int end)

取从start位置開始到end位置结束的CharSequence

String

substring(int start)

取从start位置開始到结束的子字符串。

String

substring(int start, int end)

取从start位置開始到end位置结束的子字符串。

char[]

toCharArray()

将该String对象转换成char数组。

String

toLowerCase()

将字符串转换成小写。

String

toUpperCase()

将字符串转换成大写。

String

trim()

移除字符串中的空格。

static String

valueOf(long value)

long类型的对象转换成字符串。

static String

valueOf(Object value)

value对象转换成字符串。

static String

valueOf(char[] data)

char[]类型的对象转换成字符串。

static String

valueOf(double value)

double类型的对象转换成字符串。

static String

valueOf(int value)

int类型的对象转换成字符串。

static String

valueOf(float value)

float类型的对象转换成字符串。

static String

valueOf(char[] data, int start, int length)

将字符数组中从start位置開始长度为length的字符转换成字符串。

static String

valueOf(boolean value)

boolean类型的对象转换成字符串。

static String

valueOf(char value)

char类型的对象转换成字符串。

 

Java String类具体解释