Java String类具体解释

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

类结构:



public final class
String

extends
Object

implements
Serializable,
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类型的对象转换成字符串。

时间: 2024-11-10 08:35:13

Java String类具体解释的相关文章

java String 类 基础笔记

字符串是一个特殊的对象. 字符串一旦初始化就不可以被改变. String s = "abc";//存放于字符串常量池,产生1个对象 String s1=new String("abc");//堆内存中new创建了一个String对象,产生2个对象 String类中的equals比较字符串中的内容. 常用方法: 一:获取 1.获取字符串中字符的个数(长度):length();方法. 2.根据位置获取字符:charAt(int index); 3.根据字符获取在字符串中

Java String类

JAVA String类[转] 1.String对象的初始化 由于String对象特别常用,所以在对String对象进行初始化时,Java提供了一种简化的特殊语法,格式如下: String s = “abc”; s = “Java语言”; 其实按照面向对象的标准语法,其格式应该为: String s = new String(“abc”); s = new String(“Java语言”); 只是按照面向对象的标准语法,在内存使用上存在比较大的浪费.例如String s = new String

JAVA String 类

java String类中的常用方法:public char charAt(int index)返回字符串中第index个字符:public int length()返回字符串的长度:public int indexOf(String str)返回字符串中第一次出现str的位置:public int indexOf(String str,int fromIndex)返回字符串从fromIndex开始第一次出现str的位置:public boolean equalsIgnoreCase(Strin

Java String类详解

Java字符串类(java.lang.String)是Java中使用最多的类,也是最为特殊的一个类,很多时候,我们对它既熟悉又陌生. 类结构: public final class String extends Object implements Serializable, Comparable<String>, CharSequence 类概述: Java程序中的所有字面值(string literals),即双引号括起的字符串,如"abc",都是作为String类的实例

Java 11 - Java String类

Java String类 字符串广泛应用在Java编程中,在Java中字符串属于对象,Java提供了String类来创建和操作字符串. 创建字符串 创建字符串最简单的方式如下: String greeting = "Hello world!"; 在代码中遇到字符串常量时,这里的值是"Hello world!",编译器会使用该值创建一个String对象. 和其它对象一样,可以使用关键字和构造方法来创建String对象. String类有11种构造方法,这些方法提供不同

详解Java String类

转载自http://hxraid.iteye.com/blog/522167 众所周知,String是由字符组成的串,在程序中使用频率很高.Java中的String是一个类,而并非基本数据类型. 不过她却不是普通的类哦!!! [镜头1] String对象的创建       1.关于类对象的创建,很普通的一种方式就是利用构造器,String类也不例外:String s=new String("Hello world"); 问题是参数"Hello world"是什么东西

Java String类为什么不可变?

原文地址:# Why String is immutable in Java? 众所周知,String类在Java中是不可变的.不可变类简单地说是实例不可修改的类.对于一个实例创建后,其初始化的时候所有的信息都不能被修改.不可变类有很多的好处,本文简述为什么String类要设计成不可变类.本文将从内存,同步性,数据结构的角度说明不变性的概念. 1.字符串常量池的需要 String常量池是方法区的一个特殊的储存区.当新建一个字符串的时候,如果此字符串在常量池中早已存在,会返回一个已经存在字符串的引

Java String类相关知识梳理(含字符串常量池(String Pool)知识)

目录 1. String类是什么 1.1 定义 1.2 类结构 1.3 所在的包 2. String类的底层数据结构 3. 关于 intern() 方法(重点) 3.1 作用 3.2 字符串常量池(String Pool) 4. String类所用的连接符 5. String类的主要作用(简) 正文 1. String类是什么 1.1 定义 String类表示字符串.Java程序中的所有字符串都是这个String的实例,比如"abc".字符串为常数,它们的值在创建之后不能更改.因为字符

Java String类的常用方法

String(byte[ ] bytes):通过byte数组构造字符串对象. String(char[ ] value):通过char数组构造字符串对象. String(Sting original):构造一个original的副本.即:拷贝一个original. String(StringBuffer buffer):通过StringBuffer数组构造字符串对象. byte[] b = {'a','b','c','d','e','f','g','h','i','j'}; char[] c =