Java基础复习—常用类之String类

/**
     * 注意事项
     * 1.String类不能被继承,被Final修饰
     * 2.String  a = "stringClass";是在方法区常量池里开辟空间(JDK1.6)
     * 3.String  b = new String("stringClass");是在堆里开辟空间
     * 4.所以a != b,除非使用String的equals方法比较两个变量的值才会相等(a.equals(b))
     * 5.String       |   StringBuffer  |  StringBuilder区别
     *   效率最低      |   线程安全(效率低) |  线程不安全(效率最高)
     *   不可变字符序列 |   可变字符序列     |  可变字符序列
     */
public class StringClass {
    
    

    public static void main(String[] args) {
    
    

        //常量池里新建一个Hello World!,name 在栈里引用其地址
        String name1  = "zhangSan";
        String name2  = "zhangSan";
        String name4 = "ZhangSan";

        /*
          * name1 = "xiangming";
          * 此时如果执行上面代码给name重新赋值,则常量池里会新开辟一个空间给xiaoming,再将其地址给name
          * String类的不可变性含义
        */

        String name3 = new String("zhangSan");
        System.out.println("name1 == name2的值:"+(name1 == name2));
        System.out.println("name1 == name3的值:"+(name1 == name3));
        System.out.println("name1.equals(name2)的值:"+(name1.equals(name2)));
        System.out.println("name1.equals(name3)的值:"+(name1.equals(name3)));

        System.out.println("=============String类常用方法===================");
        System.out.println();

        String content = "java is the best programing language in the world!";

        System.out.println("=============length()方法===================");
        //length()方法:返回字符串长度(空格也算一个字符)
        System.out.println("content的字符串长度是:"+content.length());
        System.out.println();

        System.out.println("=============charAt(int index)方法===================");
        //charAt(int index)方法:根据下标获取字符(index是坐标参数)
        System.out.println("content的字符串的第一个字符是:"+content.charAt(0));
        System.out.println("content的字符串的最后一个字符是:"+content.charAt(content.length()-1));
        System.out.println();

        System.out.println("=============contains(String str)方法===================");
        //contains(String str):判断当前字符串是否包含str(返回一个boolean值)
        System.out.println("content的字符串是否包含“Java”字符串:"+content.contains("Java"));
        System.out.println("content的字符串是否包含“java”字符串:"+content.contains("java"));
        System.out.println();

        System.out.println("=============toCharArray()方法===================");
        //toCharArray():返回字符串所对应的数组
        System.out.println("content的字符串对应的数组为:"+ Arrays.toString(content.toCharArray()));
        System.out.println();


        System.out.println("=============indexOf(String str)方法===================");
        //indexOf(String str):返回字符串里指定字符第一次出现的位置
        System.out.println("content的字符串里“the”字符串第一次出现位置:"+ content.indexOf("the"));
        System.out.println();

        System.out.println("=============lastIndexOf(String str)方法===================");
        //lastIndexOf(String str):返回字符串里指定字符最后一次出现的位置
        System.out.println("content的字符串里“the”字符串最后一次出现的位置:"+ content.lastIndexOf("the"));
        System.out.println();

        System.out.println("=============trim()方法===================");
        //trim()方法:去除字符串两边的空格
        String content1 = "  java!   ";//Java两边有空格
        System.out.println("content1没有去除两边的空格后的显示:"+content1);
        System.out.println("content1去除两边的空格后的显示:"+content1.trim());
        System.out.println();

        System.out.println("=============toUpperCase()方法===================");
        //toUpperCase():将字符串转为大写  (toLowerCase():将字符串全部转为小写)
        System.out.println("content1转换为大写结果:"+content1.trim().toUpperCase());
        System.out.println();

        System.out.println("=============endWith(String str)方法===================");
        //endWith(String str):判断字符串是否以str结尾(startsWith(String str):判断字符串是否以str开头)
        System.out.println("判断content是否以!结尾:"+content.endsWith("!"));
        System.out.println();

        System.out.println("=============replace(char older,char new)方法===================");
        //replace(char older,char new)方法:用new字符串替代older字符串
        //可以利用replace方法执行插入操作!!!
        System.out.println("content1中java被PPT替换后显示:"+content1.replace("java","PPT"));
        System.out.println();

        System.out.println("=============split(String str)方法===================");
        //split(String str):对字符串进行拆分(用String []接受拆分后的结果)
        String [] Con= content.split(" ");
        System.out.println("对content通过空格进行拆分后显示:");
        for(String Con1 : Con){
    
    
            System.out.println(Con1);
        }
        System.out.println();

        System.out.println("=============equals()方法===================");
        //equals()方法:比较是否相等(equalsIgnoreCase(String anotherString) 方法忽略大小写比较)
        System.out.println("name1与name2使用equals方法比较结果:"+name1.equals(name2));
        System.out.println("name1与name4没有使用equalsIgnoreCase方法比较结果:"+name1.equals(name4));
        System.out.println("name1与name4使用equalsIgnoreCase方法比较结果:"+name1.equalsIgnoreCase(name4));
        System.out.println();

        System.out.println("=============compareTo()方法===================");
        //compareTo()方法:比较大小(compareToIgnoreCase():忽略大小写比大小)
        String s1 = "abc";
        String s2 = "xyz";
        System.out.println("s1与s2比较大小的结果值为:"+s1.compareTo(s2));
        /* 此处实际是a与x相比较;如果两个字符串第一个字符相等,则比较第二个字符,以此类推;
         *s3 = "asd";
         *s4 = "asdfgs";
         *如果像上面当两个字符串的长度不同时,不是字符相比,而是字符串长度相比较;拿s3的长度减去s4的长度(结果为负值)
        */
    }
}

猜你喜欢

转载自blog.csdn.net/weixin_42347543/article/details/114988065
今日推荐