一、介绍
- java.lang.String类代表字符串,String类定义的变量可以用于指向字符串对象,然后操作该字符串
- java程序中的所有字符串文字(例如“abc”)都为此类的对象
String name = "小黑";
String scheoolName = "Sheik";
二、特点
String被称为不可变字符串类型,它的对象在创建后不能被更改
三、创建String的方式
一、直接使用""定义
String name = "陈晨"
二、通过String类的构造器创建对象
构造器 | 说明 |
---|
public String() | 创建一个空白字符串对象,不含有任何内容 |
public String(String original) | 根据传入的字符串内容,来创建字符串对象 |
public String(char[] chs) | 根据字符数组的内容,来创建字符串对象 |
public String(byte[] chs) | 根据字节数组的内容,来创建字符串对象 |
四、不同创建方式的区别
- 以""方式给出的字符串对象,在字符串常量池中存储,而且相同内容只会在其中存储一份
- 通过构造器new对象,每new一次都会产生一个新对象,放在堆内存中
五、字符串的内容比较
方法名 | 说明 |
---|
public boolean equals(Object anObject) | 将此字符串与指定对象进行比较。只关心字符内容是否一致 |
public boolean equalsIgnoreCase(String anotherString) | 将此字符串与指定对象进行比较,忽略大小写比较字符串。只关心字符串内容是否一致 |
六、常用API
方法名 | 说明 |
---|
public int length () | 返回此字符串的长度 |
public char charAt (int index) | 获取某个索引位置处的字符 |
public char[] toCharArray () | 将当前字符串转换成字符数组返回 |
public String substring(int beginIndex, int endIndex) | 根据开始和结束索引进行截取,得到新的字符串(包前不包后) |
public String substring(int beginIndex) | 从传入的索引处截取,截取到末尾,得到新的字符串 |
public String replace(CharSequence target,CharSequence replacement) | 使用新值,将字符串中的旧值替换,得到新的字符串 |
public String[] split(String regex) | 根据传入的规则切割字符串,得到字符串数组返回 |