最近学习了String类,现在总结一下,有欠缺的希望大家补充 谢谢
字符串最大的特点:一旦被初始化就不可以被改变。
字符串常见的操作:(返回值类型 方法)
一、获取
1.字符串中包含的字符串数,也就是字符串长度
int length()
2.根据位置获取位置上字符
char charAt(int index)
3.根据字符获取该字符在字符串中的位置
int indexOf(int ch)
返回值是第一次出现的位置
int indexOf(int ch,int fromIndex)
从fromIndex指定位置开始,获取ch在字符串中出现的位置
当查找的字符不在给定的字符串中时,结果为-1
class Demo
{
public static void main(String[] args)
{
method_get();
}
public static void method_get()
{
String str="abcdeakpf";
//获取长度
sop(str.length());
//根据索引获取字符
sop(str.charAt(4));
//根据字符获取索引
sop(str.indexOf('m',3)); //结果为-1
}
public static void sop(Object obj)
{
System.out.println(obj);
}
}
二、判断
1.字符串是否包含某一个字符
boolean contains()
注意:indexOf(str):可以索引Str第一次出现的位置,如果返回-1
表示str不在字符串中,所以也可以用indexOf(str)查看字符
串中是否包含某个字符,为正则包含,为负则不包含。
2.字符串是否有内容
boolean isEmpty()
3.字符是否以指定内容开头
boolean startsWith(str)
4.字符串是否以指定内容结尾
boolean endWith(str)
5.判断字符串的内容是否相等
boolean equals(str)
6.判断字符串的内容,并忽略大小写
boolean equalsIgnoreCase()
三、转换
1.将字符数组转成字符串
构造函数法
string(Char[])
string (Char[],int offset,int count) 将字符数组中的一部分转成字符串
其中:offset为转换起始位
Count为转换个数
例; char[] arr={‘a’,’b’,’c’,’d’,’e’,’f’,’g’}
string s=new String(arr,1,3)
结果为 bc 包含头不包含尾
静态方法
static String copyValueOf(char[])
static String copyValueOf(chr[] date,int offset,int count)
2.将基本数据类型转成字符串
static String vaueOf(int)
static String valueOf(double)
例如:3+" "相当于static String valueOf(3)
3.将字符串转成字符数组
char[] tocharAaary()
4.将字符串转成字节数组
byte[] getByte()
5.将字节数组转成字符串
String(Byte[])
String(Byte[],offset,count)
注意:字符串和字符数组在转换工程中是可以指定编码表的
四、替换
String replace(old char,new char)
注意:如果替换的字符不存在,返回原串
五、切割
String[] split(regex)
例如: public static void method_soplit()
{
String s="zhangsan,lisi,wangwu";
String[] arr=s.split(","); //用字符串中的逗号对字符串进行切割
for(int x=0;x<arr.length;x++)
{
sop(arr[x]);
}
}
结果为:zhangsan lisi wangwu
六、子串:获取字符串中的一部分
String substring(int begin)
String substring(int begin,int end)
例如:String s="abdef";
sop(s.substring(2)); //结果为 cdef
sop(s.substring(2,4)); //结果为 cd
sop(s.substring(20)); //角标越界
七、转换:去除空格 比较
1.将字符串转成大写小写
String toUpperCase()
String toLowerCase()
2.将字符串两端的多个空格去掉
String trim()
3.对两个字符串进行自然顺序比较(正 负 0)
int compareTo(String)
例如:String s1="acc";
String s2="aaa";
sop(s1.compareTo(s2)) //结果为1 是c和a的Asic码值
|