一,
最重要的一点要明白:字符串对象在内存中一旦声明之后就不会变。
对于字符串的声明有两种方法
String a = "aaaa"
SString a = new String("asd");
要注意的是a 是一个类类型变量,"aaaa"也是一个对象
这是String对象声明的一种特殊形式。
a指向"aaaa"对象。
"aaaa"一旦声明也就保存在内存中
object的equals方法在String类中被重写。用于比较两个字符串的具体值
二,
String类适用于描述字符串事物
那么它就提供了多个方法对字符串进行操作
1,获取
1.1 字符串中包含的字符数,,也就是字符的长度
int length():获取长度
1.2
根据卫视获取位置上的某个字符
char charat(int index)
1.3 根据字符获取该字符在字符串中的位置
int indexof(char ch):返回的是ch在字符串中第一次出现的位置
int indexof(char ch,int fromIndex):从fromindex指定的位置开始,获取ch在字符中出现的位置
int indexof(String str):返回的是str在字符串中第一次出现的位置
int lastIndexof(int ch);
2,判断
2.1 字符串是否包含某一个子串
boolean contains(str):
特殊之处:
indexof(str):可以引索str第一次出现的位置,如果返回-1,表示该str不在字符串中存在。
所以,也可以用于对指定的判断是否包含。
if(str.indexof("aa")!=-1)
而且该方法既可以判断,也可以获取出现的位置
2.2字符中是否有内容
boolean isEmpty():原理就是判断程度是否为0
2,3字符串是否已制定内容开头
boolean startWith(str);
2.4字符串是否以指定内容结尾
boolean endsWith(str)
2.5判断字符串内容是否相同,复写了object中的equals方法
boolean equals(str);
2.6
判断内容是否相同,并忽略大小
boolean equalsIgnoreCase();
3,转换
3.1将字符数组装成字符串
构造函数:
String(char[])
String(char[],offset,count)
静态方法
static String copyValueOf(char[] data);
Static String copyValueOf(char[] data,int offset,int count)
static String valueof(char[]);
3.2将字符串转成数组
char tocharArray();
3.3
将字节数组转成字符串
String(byte[])
String(byte[],offset,count)将字节数组的一部分转成字符串
3.4
将字符串转成字节数组
byte[] getbytes()
3.5
将基本数据类型转成字符串
static String valueof(int)
static String valueof(double)
3+""等效于String.valueof(3);
4. 替换
String replace(oldchar,newchar)
注意:如果要替换的旧字符不存在,那么还返回原来的字符
5.切割
String[] split(regex)
6,子串,获取字符串中的一部分;
String subString(begin)从指定位置到结尾,如果下角标不存在,那么下角表越界
String subString(begin,end)包含头 不包含尾巴
7,转换 去除空格,比较
7.1 将字符串转成大写或小写
String toupperCase
String toLowerCase
7.2将字符串两端的多个空格去除
String trim();
7.3
对两个字符串进行自然顺序的比较
int compareTo(String);
----------------------------------------------------------------------------------------------------
以上总结的内容本人认为是要经常用到的,在这里给大家分享一下!
|
|