美文网首页
Java学习笔记--字符串

Java学习笔记--字符串

作者: Allens_Lee | 来源:发表于2019-10-31 13:01 被阅读0次

    1、创建String对象的方法

    //创建一个字符串对象
    String s1 = "hello world";
    //创建一个空字符串对象
    String s2 = new String();
    //创建一个字符串对象
    String s3 = new String("hello world");
    

    注意:

    1. String对象创建后则不能修改,是不可变的,所谓的修改其实是创建了新的对象,所指向的内存空间不同。
    2. 每次new一个字符串就是产生一个新的对象,即便两个字符串的内容相同,使用“==”比较时也为“false”,如果只需比较内容是否相同,应使用“equals”方法。

    2、String的常用方法

    • int length()
      返回当前字符串的长度

    • int indexOf(int ch)
      查找ch字符在该字符串中第一次出现的位置

    • int indexOf(String str)
      查找str子字符串在该字符串中第一次出现的位置

    • int lastIndexOf(int ch)
      查找ch字符在该字符串中最后一次出现的位置

    • int lastIndexOf(String str)
      查找str子字符串在该字符串最后一次出现的位置

    • String substring(int beginIndex)
      获取从beginIndex位置开始到结束的子字符串

    • String substring(int beginIndex, int endIndex)
      获取从beginIndex位置开始到endIndex位置的子字符串

    • String trim()
      返回去除了前后空格的字符串

    • boolean equals(Object obj)
      将该字符串与指定对象比较,返回true或false

    • String toLowerCase()
      将字符串转换为小写

    • String toUpperCase()
      将字符串转换为大写

    • char charAt(int index)
      获取字符串中指定位置的字符

    • String[] split(String regex,int limit)
      将字符串分割为子字符串,返回字符串数组

    • byte[] getBytes()
      将该字符串转换为byte数组

    3、“==” 和 equals()的区别

    • ==:判断两个字符串在内存中首地址是否相同,即判断是否是同一个字符串对象

    • equals():比较存储在两个字符串对象中的内容是否一致

    4、StringBuilder 和 StringBuffer

    StringBuilder 和StringBuffer ,它们基本相似,都是可变字符串对象,不同之处,StringBuffer 是线程安全的,而 StringBuilder 则没有实现线程安全功能,所以性能略高。因此一般情况下,如果需要创建一个内容可变的字符串对象,应优先考虑使用 StringBuilder 类。

    • 初始化StringBuilder对象
    //创建一个空的StringBuilder对象
    StringBuilder str1 = new StringBuilder();
    //创建一个带有初始值的对象
    StringBuilder str2 = new StringBuilder("hello world");
    

    5、StringBuilder常用方法

    • StringBuilder append(参数)
      追加内容到当前StringBuilder对象的末尾

    • StringBuilder insert(位置, 参数)
      将内容插入到StringBuilder对象的指定位置

    • String toString()
      将StringBuilder对象转换为String对象

    • int length()
      获取字符串长度

    相关文章

      网友评论

          本文标题:Java学习笔记--字符串

          本文链接:https://www.haomeiwen.com/subject/nlttbctx.html