String类

  • 字符串是常量,创建之后不可改变
  • 字符串字面值存储在字符串池中,可以共享,字符串池位于方法区内
  • String s="hello";产生一个对象,字符串池中存储
  • String s=new String("hello");产生两个对象,堆,池中各一个。栈里的对象引用地址指向堆,堆中的地址指向字符串池

字符串常用方法

  • length():返回字符串长度
  • charAt(int index):返回某个位置的字符
  • contains(String str):判断是否包含某个字符
  • char[] toCharArray():将字符串转换成数组
  • int indexOf(String srt):查找Str首次出现的下标,如果存在返回下标,不存在返回-1
  • int lastIndexOf(String str): 查找字符串在当前字符串中最后一次出现的下标索引
  • String trim();去掉字符串前后空格
  • String toUpperCase();将小写转换为大写
  • boolean endWith(String str) ;判断字符串是否已str结尾
  • String replace(char oldChar, char newChar) ;将旧的字符串替换为新的字符串
  • String[] split(String str); 根据str进行拆分

StringBuffer和StringBuilder

  • StringBUffer:可变长字符串,JDK1.0,运行效率慢,线程安全
  • StringBuilder: 可变长字符串,JDK1.5, 运行效率块,线程不安全
    不管哪种都比操作string对象高效
    1.append(str)
    2.insert(int index)
    3.replace(int index1, int index2)
    4.delete(int index1, int index2)
posted @ 2021-03-04 02:21  UltraBlast  阅读(38)  评论(0)    收藏  举报