String包装类
1.从字符串中截取一段 substring()
字符串截取函数:substring(起始索引,终止索引);
截取的范围:[起始索引,终止索引)
也就是终止索引我们是截取不到的
示例代码:
//中间留有空格
String str="I love you";
//I love you(字符串)
//0123456789(对应索引)
str=str.substring(0,6);
System.out.println(str);
运行结果:I love
由于Java有多态的性质,所以substring还有一种用法:
从开始索引直接截取到字符串结尾:substring(开始索引)
String str="I love you";
//I love you
//0123456789
str=str.substring(2);
运行结果:love you
2.字符串比较函数 str1.compareTo(str2)
str1.compareTo(str2)
这是一个有返回值的函数:
返回值为0 => str1==str2
返回值为1 => str1>str2
返回值为-1 => str1<str2
示例代码:
String s0="z";
String s1="a";
if(s0.compareTo(s1)<0){
System.out.println("字符串"+s0+"小于"+s1);
}
else{
System.out.println("字符串"+s1+"小于"+s0);
}
运行结果:字符串a小于z
3.字符串的格式化 format()
String.format("%d,%s,%c,%f",1,“java”,‘c’,3.14);
这个和C语言的printf("%d",12)非常像
实例代码:
System.out.println(String.format("姓名:%s \n班级:%s","程麒阁","软件183"));
输出结果:
姓名:程麒阁
班级:软件183
4.判断字符串开头和结尾 endswith()
这个函数在文件操作中有很大用处:
比如你想找到.mp4文件想看视频,你想找到.ppt文件播放PPT
如果你学会了这个函数就太容易了
示例代码:
String str1="冰糖雪梨.mp4";
//如果是.mp4结尾的返回true
if(str1.endsWith(".mp4")){
System.out.println("是视频格式");
}
//如果是冰糖雪梨开头返回true
if(str1.startsWith("冰糖雪梨")){
System.out.println("优酷独家播放");
}
5.查找主串中子串第一次出现位置 indexOf()
str1.indexOf(str2);
例题:查找love在I love you中第一次出现的位置
主串:I love you
子串:love
String parents="I love you";
String children="love";
int index=parents.indexOf(children);
System.out.println("love出现的位置"+index);
运行结果:2
6.给定序号查阅字符串对应字符 charAt()
str.charAt(int i);
String str="cqg";
System.out.println(str.charAt(0));
运行结果:c
StringBuffer包装类[String增强]
1.追加字符串函数 append()
示例代码:
StringBuilder str = new StringBuilder();
str.append("abcdefg");
System.out.println(str);
运行结果:abcdefg
2字符串的删除函数 delete()
两种用法:
1.删除指定位置的字符
StringBuilder str = new StringBuilder();
//字符串的追加
str.append("abcdefg");
System.out.println(str);
//字符串的删除
str.deleteCharAt(2);
System.out.println(str);
运行结果:abdefg
2.删除一段字符串
StringBuilder str = new StringBuilder();
str.append("abcdefg");
//4删除不到
str.delete(2,4);
System.out.println(str);
运行结果:abefg
3.字符串的插入 insert()
示例代码:
StringBuilder str = new StringBuilder();
str.append("cqghello");
//在3之前插入nihao
str.insert(3,"nihao");
System.out.println(str);
运行结果:cqgnihaohello
**
4.字符串的反转 reverse()
StringBuffer str=new StringBuffer();
str.append("123456");
System.out.println(str.reverse());
运行结果:654321
String包装类下有的字符串处理方法StringBuffer都有,因为StringBuffer是String的增强版,这里只说明StringBuffer类特有的字符串处理办法
StringBuffer可以处理字符串但是往往有些时候必须转换为字符串才能用
这里我们用toString()方法转换就好
String包装类和StringBuffer类配合使用,再相互转换就可以解决字符串处理了。