Api String和Char的常用方法

String的方法以及应用:

public class TestString {
  public static void main(String[] args) {
    //字符串常量会被放入常量池中
      String string="abc";
      String string2=new String("def");
      String string3="abd"+"dedsd";
      String string4="18"+19; //不是加法 是字符串连接符
      System.out.println(string4);

    //10 和 11是同一对象 在常量池中取得是同一个 12新建了对象
      String str10="gaoqi";
      String str11="gaoqi";
      String str12=new String("gaoqi");

    System.out.println(str10==str11);//ture
    System.out.println(str12==str11);//false

    //通常比较字符串时,使用equals 比较字符(不比较字符的时候,equals仍然比较的是地址)
    // ==比较的是地址是否一样,
      System.out.println(str12.equals(str11));
  }
}

 

 

 

public class TestString2 {
  public static void main(String[] args) {
    String s1="core java";
    String s2="Core java";

     System.out.println(s1.length());//提取字符串的长度
     System.out.println(s1.charAt(3));//提取下标为3的字符

     System.out.println(s2.length());//字符串的长度 空格也算一个长度

     System.out.println(s1.equals(s2));//比较两个字符串是否相等
     System.out.println(s1.equalsIgnoreCase(s2));//比较两个字符串,忽略大小写

     System.out.println(s1.indexOf("java"));//字符串s1中是否包含java,返回第一次出现的位置,没有则返回-1
     System.out.println(s1.indexOf("apple"));//字符串s1中是否包含apple

     String s=s1.replace(' ','&');//将s1中的空格替换成&
     System.out.println("result is:"+s);


      String s3="";
      String s4="How are you?";

      System.out.println(s1.startsWith("How"));//是否以How开头
      System.out.println(s1.endsWith("you"));//是否以you结尾

      s3=s4.substring(4);//提取子字符串,从下表为4的开始到字符串结尾为止
        System.out.println(s3);
      s3=s1.substring(4,7);//提取子字符串,下标[ 4,7) 不包括7

      System.out.println(s3);
      s3=s1.toLowerCase();//转小写
      System.out.println(s3);
      s3=s1.toUpperCase();//转大写
      System.out.println(s3);

      s2=" How old are you? ";
      s=s2.trim();//去除字符串首尾的空格,注意:中间的空格不能去除
      System.out.println(s);
      System.out.println(s2);//string是不可变字符串,s2不变

    //将字符串转化为字符串数组(字符串的切割,涉及到了正则表达式)
        s1="张三,李四,王五";
        String[] arr=s1.split(",");
       for (int i=0;i<arr.length;i++) {

          System.out.println(arr[i]);

       }

    //将字符串转化为字符数组
        char[] arr2=s1.toCharArray();
        for (int i=0;i<arr.length;i++) {System.out.println(arr2[i]);}

    //将字符串转化为字节数组
        s1="ab你";
        byte[] bytes=s1.getBytes();
      for (int i = 0; i < bytes.length; i++) {

        System.out.println(bytes[i]);

      }
  }
}

    

    String string="aaaabbbb"; //本质上是一个char value[]-字符数组。有final修饰,只能赋值一次,故不可变
    String string2=string.substring(2,5);
  
    System.out.println(string);
    System.out.println(string2);

  //编译器做了优化,直接在编译的时候将字符串进行拼接
    String str1="hello"+"java"; //相当于str1="hello java";
    String str2="hello java";
    System.out.println(str1==str2); //true
    String string3="hello";
    String string4="java";

  //编译的时候不知道变量中存储的是什么,所以没法在编译时优化
    String str5=string3+string4;
    System.out.println(str2==str5);//false

    System.out.println(str2.equals(str5));//字符串比较时,用equals不用==

 

Char的方法:

*所有的方法 如果是is开头 那么返回一定是boolean
  Character.isDigit('1');//是否是数字
  Character.isLetter('a');//是否是字母
  Character.isUpperCase('A');//是否是大写
  Character.isLowerCase('b');//判断是否是小写
  Character.isSpace(' ');//是否是空格
  Character.isWhitespace(' ');//是否是空格

posted @ 2022-06-10 16:47  溺涩  阅读(57)  评论(0)    收藏  举报