Day15 String类方法
Day15
String类
String类概述
- 一旦创建就不能被改变。因此可以被共享。
- 用默认的等号方式建立的字符串存在于字符串常量池中,用new构造函数建立的字符串存在于堆中。
equals()
- String类的equals复写了父类的equals,比较的是字符串的内容而不是地址。
String构造方法
- 可以用new构造器构造
- 可以用直接赋值字符串常量来构造
- 还可以用数组来构造。且可以加入offsetindex和count来控制。
String方法:获取
获取字符串中字符的个数
int length();
根据位置获取字符
char charAt(int index);
根据字符获取在字符串中的第一次出现的位置
int indexOf(int ch);
int indexOf(int ch, from index);//从指定位置开始查找
int indexOf(String str);//获取str字符串在指定字符串中第一次出现的位置
int indexOf(String str, from index);//从指定位置开始查找
int lastIndexOf(int ch); //一共四种构造 同上。
获取字符串中一部分字符串
获取的目标也叫子串。
String subString(int beginIndex, endIndex int);
String subString(int beginIndex)
转换
切割字符串为字符串数组
''String[] split(String regex);
''String[] split(String regex, int limit);
把字符串变成字符数组
''char[] toCharArray();
将字符串转成字节数组
''byte[] getBytes();
将字符串中的字母转成大小写
String toUpperCase();
String toLowerCase();
将字符串内容中某些字符替换
String replace(char oldchar, char newchar);
String replace(String oldstring, String newstring);
修剪字符串两端的空格
String trim();
将字符串进行连接
String concat(String s2);
将其他数据类型变成字符串
String valueOf(Object target);
判断
两个字符串内容是否相同
boolean equals(Object obj);
boolean equalsIgnoreCase(String anotherString);
字符串中是否包含其他某个字符串
boolean contains(String anotherString);
字符串是否以指定字符串开头、结尾
boolean startsWith(char ch);
boolean endsWith(char ch);
比较
比较两个字符串的字典顺序
int compareTo();
intern方法
可以对字符串池进行操作。规范化表示形式。
StringBuffer
- StringBuffer是字符串缓冲区。
- 用于存储数据的容器。
- 特点:
- 长度可变。
- 可以存储不同类型的数据。
- 最终要转成字符串进行使用。
- 容器对象具备添加、删除、排序等的功能。
添加
StringBuffer append(Object) //也可以追加字符串
StringBuffer insert(int index, Object)
删除
StringBuffer delete(int start, int end); //包头不包尾
StringBuffer deleteCharAt(int index;
查找
char charAt(int index);
int indexOf(String);
int lastIndexOf(String);
修改
StringBuffer replace(int start, int end, String);
void setCharAt(int index, char ch);
其他
setLength();
reverse();
StringBuilder类
与StringBuffer类相兼容,但是不保证同步,也即不一定安全。
但其速度较快,通常用于单线程。
浙公网安备 33010602011771号