String自我了解
string是一种引用类型,他是对字符串的一种操作,但是因为他是一种引用类型,所以当他改变的时候,他其实是在重新创建一个新的对象。
String 方法
1.equals()比较两个字符串的值,注意调用此方法的字符串建议一定是一个存在值的对象
String s1="abc";
String s2="abc";
String s3="ccc";
System.out.println(s1.equals(s2));//true
System.out.println(s2.equals(s3));//false
2.equalslgnoreCase():比较两个字符串,并且忽略大小写
String s1="abc";
String s2="abc";
String s3="ABC";
System.out.println(s1.equalsIgnoreCase(s3));//true
System.out.println(s1.equalsIgnoreCase(s2));//true
3.toString():打印出类的地址值,如果想要打印类的属性就需要重写同String()方法;
Demo02 demo02 = new Demo02();
System.out.println(demo02.toString());
4.(String):强制将某些类型转换成string类int,double不可转
String i="a";
Object o = new Object();
String s= (String) o;
5.String.valueOf():转换成string类型
int i=0;
String s= String.valueOf(i);
6.split():根据字符串截取返回一个字符串的集合
String s = "adfsfasdfs";
String[] fs = s.split("fs");
for (int i = 0; i < fs.length; i++) {
System.out.println(fs[i]);
}
System.out.println(s);
/**ad
fasd
adfsfasdfs*/
7.subString():截取字符串中的一段字符串,但是并不会改变原本字符串,会返回一个新的字符串
String s = "adfsfasdfs";
System.out.println(s.substring(1));//dfsfasdfs
System.out.println(s.substring(1, 5));//dfsf
System.out.println(s);//adfsfasdfs
7.1subSequence():截取字符串中指定位置的字符组成一个新的字符
String s = "adfsfasdfs";
CharSequence se = s.subSequence(1, 4);
System.out.println(s);//adfsfasdfs
System.out.println(se);//dfs
8.charAt():返回索引处的字符值
String s = "adfsfasdfs";
System.out.println(s.charAt(4));//f
9.toLowerCase():转小写
String s = "adfsfasDFF";
System.out.println(s.toLowerCase());//adfsfasdff
10.indexOf():字符串中是否有指定的变量,如果有返回位置,如果没有返回-1
String s = "adfsfasdff";
System.out.println(s.indexOf(5));//-1
System.out.println(s.indexOf("fs"));//2
System.out.println(s.indexOf("ds"));//-1
10.1lastIndexof():返回指定字符串出现的最后一次下标
String s = "adfsfasdff";
System.out.println(s.lastIndexOf(5));//-1
System.out.println(s.lastIndexOf("f"));//9
System.out.println(s.lastIndexOf("dd"));//-1
11.replace():讲指定的字符替换成另一个字符
String s = "adfsfasdff";
String replace = s.replace('f', 'd');
System.out.println(replace);//addsdasddd
11.1replaceAll():将指定的字符串换成新的字符串
String s = "adfsfasdff";
System.out.println(s.replaceAll("ff", "ddd"));//adfsfasdddd
12.repeat():相当于for循环重复拼接字符串
String s="***0";
System.out.println(s.repeat(5));//***0***0***0***0***0
13length():返回字符串的长度
String s="dddd";
System.out.println(s.length());//4
14.startsWith():判断字符串是否指定对象开头,区分大小写
String s="abcd";
System.out.println(s.startsWith("ab"));//true
System.out.println(s.startsWith("Ab"));//false
15.endsWith():判断字符串是否指定结尾
String s="abcd";
System.out.println(s.endsWith("d"));//true
System.out.println(s.endsWith("D"));//false
16.toCharArray():字符串转换成字符数组
String s="abcd";
char[] chars = s.toCharArray();
for (char aChar : chars) {
System.out.println(aChar);
}
17.trim():去除前后空格
18.contains():查看字符串中是否包含指定字符串
19.concat():在原有的字符串后边追加指定字符串
String s="abcd";
String s2="ddd";
String concat = s.concat(s2);
System.out.println(concat);//abcdddd