String类

String类

  • 字符串时常量,创建之后不可改变。
  • 字符串字面值存储在字符串池中,可以共享。
  • String s="hello";产生一个对象,字符串池中存储。
  • String s=new String("hello");产生两个对象,堆、池各存储一个。
package inner;

public class Demo03 {
    public static void main(String[] args) {
        String name="hello";//hello存储在字符串池中
        name="zhangsan";//张三赋值给name,给字符串赋值时,并没有修改数据,而是重新开辟一个空间
        String name2="zhangsan";
        //字符串的另一种创建方式 new String()
        String str=new String("Java");
        String str2=new String("Java");
        System.out.println(str==str2);//false
        System.out.println(str.equals(str2));//true
    }
}

常用方法

  • public int length():返回字符串的长度。

  • public char charAt(int index):根据下标获取字符串。

  • public boolean contains(String str):判断当前字符串中是否包含str。

  • public char[] toCharArray():将字符串转换成数组。

  • public int indexOf(String str):查找str首次出现的下标,存在,返回该下标;不存在,返回-1。

  • public int lastIndexOf(String str):查找字符串当前字符串中最后一次出现的下标索引。

    package inner;
    
    import java.util.Arrays;
    
    public class Demo03 {
        public static void main(String[] args) {
            //字符串方法的使用
            //1.length()返回字符串的长度
            //2.charAt(int index)标获取字符串
            //3.contains(String str):判断当前字符串中是否包含str.
            String content="java是世界上最好的语言";
            System.out.println(content.length());//13  空格也算一个字符
            System.out.println(content.charAt(0));//获取第一个字符   j
            System.out.println(content.charAt(content.length()-1));//获取最后一个字符    言
            System.out.println(content.contains("java"));//true
            System.out.println(content.contains("ppp"));//false
            //4.toCharArray():返回字符串转对应的数组。
            //5. indexOf(String str):返回字符串首次出现的位置。
            //6.lastIndexOf(String str):返回最后一次出现的位置。
            System.out.println(Arrays.toString(content.toCharArray()));//[j, a, v, a, 是, 世, 界, 上, 最, 好, 的, 语, 言]
            System.out.println(content.indexOf("java"));//0
            System.out.println(content.lastIndexOf("是"));//4
        }
    }
    
  • public String trim():去掉字符串前后的空格。

  • public String toUpperCase():将小写转换成大写。

  • public booolean endWith(String str):判断字符串是否以str结尾。

package inner;

import java.util.Arrays;

public class Demo03 {
    public static void main(String[] args) {
        //字符串方法的使用
        //1.length()返回字符串的长度
        //2.charAt(int index)标获取字符串
        //3.contains(String str):判断当前字符串中是否包含str.
        String content="java是世界上最好的语言";
        System.out.println(content.length());//13  空格也算一个字符
        System.out.println(content.charAt(0));//获取第一个字符   j
        System.out.println(content.charAt(content.length()-1));//获取最后一个字符    言
        System.out.println(content.contains("java"));//true
        System.out.println(content.contains("ppp"));//false
        //4.toCharArray():返回字符串转对应的数组。
        //5. indexOf(String str):返回字符串首次出现的位置。
        //6.lastIndexOf(String str):返回最后一次出现的位置。
        System.out.println(Arrays.toString(content.toCharArray()));//[j, a, v, a, 是, 世, 界, 上, 最, 好, 的, 语, 言]
        System.out.println(content.indexOf("java"));//0
        System.out.println(content.lastIndexOf("是"));//4
        //7.trim():去掉字符串前后的空格。
        //8. toUpperCase():将小写转换成大写。 toLowerCase()大写转换成小写
        //9.endWith(String str):判断字符串是否以str结尾。startWith(String str):判断字符串是否以str开头。
        String content2="   hello Word  ";
        System.out.println(content2.trim());//hello Word
        System.out.println(content2.toUpperCase());//   HELLO WORD
        System.out.println(content2.toLowerCase());//   hello word
        String content3="hello.java";
        System.out.println(content3.endsWith("java"));//true
        System.out.println(content3.startsWith("hello"));//true
    }
}
  • public String replace(char oldChar,char,newChar):将旧字符串换成新字符串。
  • public String[] split(String str):根据str做拆分。
package inner;

import java.util.Arrays;

public class Demo03 {
    public static void main(String[] args) {
        //字符串方法的使用
        //1.length()返回字符串的长度
        //2.charAt(int index)标获取字符串
        //3.contains(String str):判断当前字符串中是否包含str.
        String content="java是世界上最好的语言";
        System.out.println(content.length());//13  空格也算一个字符
        System.out.println(content.charAt(0));//获取第一个字符   j
        System.out.println(content.charAt(content.length()-1));//获取最后一个字符    言
        System.out.println(content.contains("java"));//true
        System.out.println(content.contains("ppp"));//false
        //4.toCharArray():返回字符串转对应的数组。
        //5. indexOf(String str):返回字符串首次出现的位置。
        //6.lastIndexOf(String str):返回最后一次出现的位置。
        System.out.println(Arrays.toString(content.toCharArray()));//[j, a, v, a, 是, 世, 界, 上, 最, 好, 的, 语, 言]
        System.out.println(content.indexOf("java"));//0
        System.out.println(content.lastIndexOf("是"));//4
        //7.trim():去掉字符串前后的空格。
        //8. toUpperCase():将小写转换成大写。 toLowerCase()大写转换成小写
        //9.endWith(String str):判断字符串是否以str结尾。startWith(String str):判断字符串是否以str开头。
        String content2="   hello Word  ";
        System.out.println(content2.trim());//hello Word
        System.out.println(content2.toUpperCase());//   HELLO WORD
        System.out.println(content2.toLowerCase());//   hello word
        String content3="hello.java";
        System.out.println(content3.endsWith("java"));//true
        System.out.println(content3.startsWith("hello"));//true
        //10.replace():用新的字符或字符串替换旧的字符或字符串。
        //11.split():对字符串做拆分。
        System.out.println( content.replace("java","php"));
        String say="Java is the best programing language";
        String[] arr=say.split("[ ,]");
        System.out.println(arr.length);//6
        for (String string : arr ){
            System.out.println(string);//ava is the best programing language
            //补充两个方法 equals、compareTo();比较大小
            String s1="hello";
            String s2="HELLO";
            System.out.println(s1.equals(s2));//false
            System.out.println(s1.equalsIgnoreCase(s2));//忽略大小写的比较 true
            String s3="abc";//97
            String s4="xyz";//120
            System.out.println(s3.compareTo(s4));//-23 长度相同比较首字符在字符表中的位置,若相同,再依次向后比较
            String s5="abc";//3
            String s6="abcxyz";//6
            System.out.println(s5.compareTo(s6));//3-6=-3 长度不同,用上面的长度减下面的长度
        }
    }
}
posted @ 2023-05-22 14:54  努力的小L  阅读(28)  评论(0)    收藏  举报