【Java】字符串

什么是字符串?

  把多个字符串连在一起

String字符串分类(其实他是一个char[]数组)

  不可变字符串:String

  可变字符串:StringBuiler / StringBuffer

字符串为空的两种形式

  1.表示引用为空:String str = null;

  还没有初始化,没有分配内存空间

  2.表示空字符串:String str = "";

  已经创建了对象,已经分配了内存

  内存当中的内容为空

字符串String创建方式

  1.String str = "ABC";

  2.String str2 = new String("ABC");

 

 判断一个字符串是否为空

1. ==  比较两个内存地址是否相等

2. equals 它是在object类,和==相同

 但是String类当中覆盖了equals方法

 

 字符串内存分析

  1.使用String str = "ABCD";创建字符串

  要么创建一个对象,要不不创建

  2.String  str2 = new String("ABCD");

  至少创建一个对象

 

 字符串编译优化

 

字符串常用方法

  1.把一个char数组转换成字符串

    char[] cs  =  new  char[] {'A', 'B','C'};

    String str = new String(cs);

    System.out.println(str);

  2.把一个字符串转换成char类型的数组

    char[] cs2 = str.toCharArray();

  3.获取字符串当中指定位置的字符

    String str2 = "myxq";

    System.out.println(str2.charAt(2));

  4.获取字符串的长度

    String str2 = "myxq";

    System.out.println(str2.length);

  5.返回一个子字符串在字符当中的第一次出现的一个位置

    String str3 = "ABCDEFGCD";

    String str4 = "CD";

    System.out.println(str3.indexOf(str4));

 

   6.返回一个子字符串在字符串当中的最后一次出现的一个位置

     String str3 = "ABCDEFGCD";

     String str4 = "CD";

     System.out.println(str3.lastIndexOf(str4));

  7.把所有字母变成大写

    String str5 = "cd";

    System.out.println(str5.toUpperCase());

  8.把所有字母变成小写

    String str3 = "ABCDEFGCD";

    System.out.println(str3.toLowerCase());

  9.忽略大小写进行比较字符串是否相等

    // ==  equals

    equalsIgnoreCase  忽略大小写的比较

    System.out.println(str4.equalsIgnoreCase(str5));

  10.用一个字符可以对字符串做一个分割  返回的是一个数组

    String str = "myxq;name;xq;my";

    String[] res2 = str.split(";");

    System.out.println(Array.toString(res2));

 

 

 

 

  11.是否以指定的字符串开头 

    String str = “myxq123”;

    boolean res = str.startsWish(“my”);

    System.out.println(res);

  12.从指定位置开始截取字符串,一直截取到最后

    String str = “myxq123”;

    String res = str.substring(1);

    System.out.println(res);

  13.获取从指定位置开始,到指定位置结束之间的字符串

    String str = “myxq123”;

    String res = str.substring(1,4);

    System.out.println(res);

  14.把一个单词的首字母变成大写

    String name = “myxq”;

    String res = name.substring(0,1);

    System.out.println(res);

    res = res.toUpperCase();

    System.out.println(res);

    String lastString = name.substring(1);

    System.out.println(lastString);

    System.out.println(res1+lastString);

 

   15.去除字符串当中左右两端的空格

    String s = “  my  mq  ”;

    s = s.trim();//去除首尾的空格,不能去掉中间的空格

    System.out.println(s.length);

    System.out.println(s);

   16.使用一个新字符替换指定字符串当中的老字符

      String str = “myxqgxq”;

      String newStr = str.replace(“q”,“g”);

      System.out.println(newStr);

  17.去除字符串当中所有的字符

      String s1 = “  my  mq  ”;

      s1 = s1.replace(“ ”,“”);

      System.out.println(s);

 

   18.判断一个字符串不为空

 

posted @ 2020-07-07 12:07  学身  阅读(243)  评论(0编辑  收藏  举报