String类
String类是系统类,是不可被继承的,为我们提供了很多利于编程的方法
String对象的内存区别
代码示例:
String a = "wangning";
String b = new String("wangning");
String c = "wangning";
boolean a1 = a==c;
boolean b1 = a==b;
boolean c1 = a.equals(b);
a = "wang";
输出结果:
true
false
true
分析:
第一行中,定义的对象实体存在于常量池中
第二行中,有两个对象,一个是new出来的,在堆内存中。第二个是在常量池中
第三行中,定义的对象实体存在于常量池中
第四行中,a与c都指向了常量池中同一个位置,所以结果为true
第五行中,a与b分别指向了常量池和堆,所以结果为false
第六行中,比较的是两个字符串是否相同,结果为true
String类的常用方法
1、获取
关键字:indexOf charAt
包括获取字符或者小字符串在字符串中的位置,可以给定开始索引的位置
和一定角标位置下的字符
示例:
int a = string.indexOf();
char b = string.charAt(index)
2、判断
关键字:contains startsWith endsWith
判断字符串中是否有某字符、以某字符串开头、以某字符串结尾
示例:
String string = "wangning";
boolean a = string.contains("ning");
boolean b = string.startsWith("wang");
boolean c = string.endsWith("ning");
System.out.println(a+" "+b+" "+c);
3、替换
关键字:replace
将字符串中的一部分替换成另一种字符串
示例:
String string = "wangning";
string = string.replace("wang", "ning");
System.out.println(string);
4、切割
关键字:split
将字符串按照某个字符切割,形成一个String类型的数组
示例:
String string = "wangning";
String [] array = string.split("n");
for(String a:array) {
System.out.println(a);
}
5、获取子串
关键字:substring(较常使用)
可以确定开始剪切初始和结束位置,也可单单确定开始位置
示例:
String string = "wangning";
String string2 = null;
string2 = string.substring(3, 7);
System.out.println(string2);
6、转换大小写(较常出现)
关键字:toUpperCase toLowerCase
示例:
String string = "wangning";
string = string.toUpperCase();
System.out.println(string);
string = string.toLowerCase();
System.out.println(string);
7、比较大小是否相等(忽略大小写)
关键字:equalsIgnoreCase
示例:
String string = "wangning";
String string2 = "Wangning";
boolean a = string.equalsIgnoreCase(string2);
System.out.println(a);
System
8、去空格
关键字:trim
示例:
String string = " wangnin g ";
string = string.trim();
System.out.println(string);
9、字符串比较
关键字:compareTo
示例:
String string = "wangning";
String string2 = "wahii";
int a = string.compareTo(string2);
System.out.println(a);
10、数组变为字符串
示例:
String string = "wangning";
char [] array = {'w','a','n','g','f','i','g','h','t'};
String string2 = new String(array);
System.out.println(string2);
11、字符串变为字符数组
关键字:toCharArray
示例:
String string = "wangning";
char [ ] array = string.toCharArray();
for(char a :array) {
System.out.print(a);
}