JAVA中String类以及常量池和常用方法

一、String类的定义

  String类特点:String 代表字符串。java程序中所有的字符串文字(例如:"abc")都被实现为String类的子类

  String类特点:长度不变,一旦创建,值就不能更改(String类的数据结构是char类型的数组,并且使用了final修饰)、

 

二、字符串常量池

    用于存储编译期间就确定,并被保存在已编译的字节码文件中的一些数据,包括final修饰的常量,以及字符串常量。

  JAVA中String类以及常量池和常用方法

 

三、String类常用方法

  

public class TestString {
    public static void main(String[] args) {
        String str="abc";//声明了一个String类型的变量,其值为"abc";
        System.out.println(str);
        /**String类相当于char类型的数组,数组的长度一旦创建不能更改,value的数组还使用了final进行修饰*/
        /**String类的常用方法*/
        System.out.println(str.charAt(0)+"\t"+str.charAt(1)+"\t"+str.charAt(2));
        
        System.out.println(str.equalsIgnoreCase("ABc")); //忽略大小写的比较
        
        System.out.println(str.indexOf("b")+"\t"+str.indexOf("k"));//找到返回索引,找不到返回-1
        
        System.out.println(str.indexOf(98)+"\t"+str.indexOf('b')); //str.indexOf('b')叫自动类型转换,自动将char-->int
        
        String str2="helloworld";
        System.out.println(str2.indexOf("o")+"\t"+str2.lastIndexOf("o"));  //lastIndexOf反向搜索
        System.out.println(str2.indexOf("o",5)+"\t"+str2.lastIndexOf("o",3)+"\t"+str2.lastIndexOf("o",7));
                
        System.out.println("字符串字符的个数"+str2.length());
        System.out.println(str2.replace('o', 'P'));
        System.out.println(str2);
        System.out.println(str2.startsWith("hell"));//以XXX开头
        
        System.out.println("Io.java".endsWith(".java"));//以XXX结尾
        
        System.out.println(str2.substring(3));//一直截取到字符串的结尾
        
        System.out.println(str2.substring(3, 7));//含头不含尾
        
        System.out.println(str2);
        
        System.out.println("JAVA".toLowerCase()+"\t"+"java".toUpperCase());
        
        String str3="   hello   world   ";
        System.out.println(str3.length()+"\t"+str3.trim().length());
        System.out.println(str3);
        str3=str3.trim();
        System.out.println(str3);
        
    }
}