1.String类
1.1 概述
java.lang.String 类代表字符串。Java程序中所有的字符串文字(例如”abc” )都可以被看作是实现此类的实
例。
类 String 中包括用于检查各个字符串的方法,比如用于比较字符串,搜索字符串,提取子字符串以及创建具有翻
译为大写或小写的所有字符的字符串的副本。
1.2 特点
字符串不变:字符串的值在创建后不能被更改。
1
2
3
4String s1 = "abc";
s1 += "d";
System.out.println(s1); // "abcd"
// 内存中有"abc","abcd"两个对象,s1从指向"abc",改变指向,指向了"abcd"。因为String对象是不可变的,所以它们可以被共享。
1
2
3String s1 = "abc";
String s2 = "abc";
// 内存中只有一个"abc"对象被创建,同时被s1和s2共享。“abc” 等效于 char[] data={ ‘a’ , ‘b’ , ‘c’ } 。
1
2
3
4
5
6例如:
String str = "abc";
相当于:
char data[] = {'a', 'b', 'c'};
String str = new String(data);
// String底层是靠字符数组实现的。
1.3 使用步骤
查看类java.lang.String
:此类不需要导入。
查看构造方法public String()
:初始化新创建的 String对象,以使其表示空字符序列。public String(char[] value)
:通过当前参数中的字符数组来构造新的String。public String(byte[] bytes)
:通过使用平台的默认字符集解码当前参数中的字节数组来构造新的String。
构造举例,代码如下:
1 | // 无参构造 |
1.4 常用方法
判断功能的方法
public boolean equals (Object anObject) :将此字符串与指定对象进行比较。
public boolean equalsIgnoreCase (String anotherString) :将此字符串与指定对象进行比较,忽略大小
写。
1 | public class String_Demo01 { |
Object 是” 对象”的意思,也是一种引用类型。作为参数类型,表示任意对象都可以传递到方法中。
注意
1 | public class String_Demo01 { |
获取功能的方法public int length ()
:返回此字符串的长度。public String concat (String str)
:将指定的字符串连接到该字符串的末尾。public char charAt (int index)
:返回指定索引处的 char值。public int indexOf (String str)
:返回指定子字符串第一次出现在该字符串内的索引。public String substring (int beginIndex)
:返回一个子字符串,从beginIndex开始截取字符串到字符
串结尾。public String substring (int beginIndex, int endIndex)
:返回一个子字符串,从beginIndex到
endIndex截取字符串。含beginIndex,不含endIndex。
1 | public class String_Demo02 { |
转换功能的方法public char[] toCharArray ()
:将此字符串转换为新的字符数组。public byte[] getBytes ()
:使用平台的默认字符集将该 String编码转换为新的字节数组。public String replace (CharSequence target, CharSequence replacement)
:将与target匹配的字符串使用replacement字符串替换。
1 | public class String_Demo03 { |
CharSequence 是一个接口,也是一种引用类型。作为参数类型,可以把String对象传递到方法中。
分割功能的方法public String[] split(String regex)
:将此字符串按照给定的regex(规则)拆分为字符串数组。
1 | public class String_Demo03 { |