常用类1——String

String是Java的字符串类,Java中所有的字符串字面量都是该类的实例,底层是用一个字符数组来存放字符串的字符序列。

  • 被final修饰,不能被继承
  • 实现类Serializable接口,支持序列化
  • 实现了Comparable接口,可比较大小
  • String内部定义了final char[] value用于存放字符串

1、String的不可变性

  • 通过字面量给一个字符串赋值(区别于用new创建对象)时,字符串的值存放在字符串常量池中,字符串常量池不会存放同一内容的字符串
  • 对字符串重新赋值时,会重新指定一块区域进行赋值,不会在原来的位置上赋值(因为value是final的)
  • 对原有的字符串进行拼接时,也需要重新指定一块区域存放拼接后的值,不能在原来的位置直接拼接

2、构造方法

方法原型 功能概述
String(String s) 用已存在的字符串创建另一个字符串
String(char[] value) 用字符数组创建字符串对象
String(char[] value, int offset, int count) 用字符数组指定的部分内容创建对象,offset起始位置,count长度
String(byte[] value) 通过默认字符编码使用字节数组创建对象
String(byte[] value, String charset) 通过指定字符编码使用字节数组创建对象

3、常用方法

1、获取字符串长度

  • int length()

2、字符串比较

  • boolean equals(Object obj)
  • boolean equalsIgnoreCase(String str)
  • int compareTo(String str)
  • int compareToIgnoreCase(String str)

3、字符串检索

  • char charAt(int index)
  • int indexOf(String str)
  • int indexOf(String str, int startIndex)
  • int lastIndexOf(String str)
  • int lastIndexOf(String str, int startIndex)

4、字符串替换

  • String concat(String str)
  • String replace(char oldChar, char newChar)
  • String toLowerCase()
  • String toUpperCase()
  • String trim()

4、字符串截取

  • String subString(int beginIndex)
  • String subString(int beginIndex, int endIndex)

5、字符串拆分

  • String[] split(String regex)
  • String[] split(String regex, int limit)

你可能感兴趣的:(JavaSE)