String:字符串类型,一个常被使用却有些小特别的类型,因为Java中所有类都有个共同的父类object。里面有众多方便String使用的方法,这里边对大家介绍并说一下他的特点:
String创建方式的不同:
和其它变量不同直接创建的String变量会存到常量池中,创建新的变量时,若常量池中已有相同变量则不会创建新的变量,而是两个变量公用一个地址
eg:
public class Test {
public static void main(String[] args) {
String name1="marko";
String name2="marko";
System.out.println(name1==name2); //引用类型中==以判断地址是否相同
}
}
结果:true
这在有的时候会给操作带来极大的不便,所以,有另外一种方法:
String name2=new String(“marko”);
这是结果就是false了
String的常见方法
1、System.out.println(letters.length());//返回字符的个数
2、System.out.println(letters.equals(" abEf “));//判断两个字符串是否内容一模一样(区分大小写),一样,true;否则,false;
System.out.println(letters.equalsIgnoreCase(” abef "));//(不区分大小写)
3、 System.out.println(letters.startsWith(" a"));//判断字符串以XXX开头
4、System.out.println(letters.endsWith("f "));//判断字符串以XXX结尾
5、System.out.println(letters.trim());//去掉字符串两端的空格
6、System.out.println(letters.replaceAll(" ", “#”));//将制定空格替换成#
7、System.out.println(letters.charAt(1));//获取字符串指定位置的字符,位置从0开始
8、 letters = “110#112#119”;
String [] mobiles = letters.split("#");//将字符串按照XXX进行分割{“110”,“112”,“119”}
for (String mobile : mobiles) {
System.out.println(mobile);
}
9、System.out.println(str.substring(1,3));//字符串截取 (左闭右开)
10、System.out.println(str.indexOf(“A”));//用于返回指定字符串在原字符串中的位置(从0开始),如果没有,则返回-1 从左向右查;
System.out.println(str.lastIndexOf(“A”));//从右向左查;
11、System.out.println(str.charAt(2));//获取某个位置(从0开始)的字符
12、char [] letters = str.toCharArray();//将字符串中的每个字符解析出来组成一个字符类型的数组