封装类和字符串常用方法(Java)
一、封装类
参考文档:[官方 Java SE 11 文档] [中文 Java SE 11 文档]
每个基本数据类型对应一个封装类:
- boolean ------ Boolean
- byte ------ Byte
- short ------ Short
- int ------ Integer
- long ------ Long
- char ------ Character
- float ------ Float
- double ------ Double
以上封装类都继承至 java.lang.Number 类,拿 Integer 举例,列出封装类的常用方法:
(1)Integer():构造方法
| 方法 | 描述 |
|---|---|
| Integer(int value) | 构造方法(int),过时,推荐使用 valueOf |
| Integer(String s) | 构造方法(String),过时,推荐使用 valueOf |
(2)xxxValue():返回指定基本数据类型的数值
| 方法 | 类型 | 描述 |
|---|---|---|
| byte byteValue() | 对象 | 以 byte 类型返回该 Integer 的值 |
| short shortValue() | 对象 | 以 short 类型返回该 Integer 的值 |
| int intValue() | 对象 | 以 int 类型返回该 Integer 的值 |
| long longValue() | 对象 | 以 long 类型返回该 Integer 的值 |
| float floatValue() | 对象 | 以 float 类型返回该 Integer 的值 |
| double doubleValue() | 对象 | 以 double 类型返回该 Integer 的值 |
(3)parseXxx():字符串 -> 基本数据类型
| 方法 | 类型 | 描述 |
|---|---|---|
| static int parseInt(String s) | 类 | 将字符串参数作为有符号的十进制整数进行解析 |
| static int parseInt(String s, int radix) | 类 | 将字符串参数作为有符号的 radix 进制整数进行解析 |
(4)toXxxString():基本数据类型 -> 字符串
| 方法 | 类型 | 描述 |
|---|---|---|
| static String toBinaryString(int i) | 类 | 以二进制(基数 2)无符号整数形式返回一个整数参数的字符串表示形式 |
| static String toHexString(int i) | 类 | 以十六进制(基数 16)无符号整数形式返回一个整数参数的字符串表示形式 |
| static String toOctalString(int i) | 类 | 以八进制(基数 8)无符号整数形式返回一个整数参数的字符串表示形式 |
(5)toString():得到 String 对象
| 方法 | 类型 | 描述 |
|---|---|---|
| String toString() | 对象 | 返回一个表示该 Integer 值的 String 对象 |
| static String toString(int i) | 类 | 返回一个表示指定整数的 String 对象 |
| static String toString(int i, int radix) | 类 | 返回用 radix 进制表示 i 的字符串 |
(6)valueOf():得到 Integer 对象
| 方法 | 类型 | 描述 |
|---|---|---|
| static Integer valueOf(int i) | 类 | 返回一个表示指定的 int 值的 Integer 实例 |
| static Integer valueOf(String s) | 类 | 返回一个表示指定的 String 值的 Integer 实例 |
| static Integer valueOf(String s, int radix) | 类 | 返回一个表示指定的 String 值(radix 进制)的 Integer 实例 |
二、字符串 String 类型
参考文档:[官方 Java SE 11 文档] [中文 Java SE 11 文档]
加上包名为 java.lang.String,被 final 修饰,不能被改变和继承,常用方法如下:
(1)String():构造方法
| 方法 | 描述 |
|---|---|
| String() | 初始化一个新创建的 String 对象,使其表示一个空字符序列 |
| String(byte[] bytes) | 通过使用平台的默认字符集解码指定的 byte 数组,构造一个新的 String |
| String(byte[] bytes, Charset charset) | 通过使用指定的 charset 解码指定的 byte 数组,构造一个新的 String |
| String(byte[] bytes, String charsetName) | 通过使用指定的字符集解码指定的 byte 数组,构造一个新的 String |
| String(char[] value) | 分配一个新的 String,使其表示字符数组参数中当前包含的字符序列 |
| String(char[] value, int offset, int count) | 分配一个新的 String,它包含取自字符数组参数一个子数组的字符 |
| String(String original) | 初始化一个新创建的 String 对象,使其表示一个与参数相同的字符序列;换句话说,新创建的字符串是该参数字符串的副本 |
| String(StringBuffer buffer) | 分配一个新的字符串,它包含字符串缓冲区参数中当前包含的字符序列 |
(2)查找
| 方法 | 类型 | 描述 |
|---|---|---|
| char charAt(int index) | 对象 | 返回指定索引处的 char 值 |
| int indexOf(int ch) | 对象 | 返回指定字符在此字符串中第一次出现处的索引 |
| int indexOf(int ch, int fromIndex) | 对象 | 返回在此字符串中第一次出现指定字符处的索引,从指定的索引开始搜索 |
| int indexOf(String str) | 对象 | 返回指定子字符串在此字符串中第一次出现处的索引 |
| int indexOf(String str, int fromIndex) | 对象 | 返回指定子字符串在此字符串中第一次出现处的索引,从指定的索引开始 |
| int lastIndexOf(int ch) | 对象 | 返回指定字符在此字符串中最后一次出现处的索引 |
| int lastIndexOf(int ch, int fromIndex) | 对象 | 返回指定字符在此字符串中最后一次出现处的索引,从指定的索引处开始进行反向搜索 |
| int lastIndexOf(String str) | 对象 | 返回指定子字符串在此字符串中最右边出现处的索引 |
| int lastIndexOf(String str, int fromIndex) | 对象 | 返回指定子字符串在此字符串中最后一次出现处的索引,从指定的索引开始反向搜索 |
(3)替换
| 方法 | 类型 | 描述 |
|---|---|---|
| String replace(char oldChar, char newChar) | 对象 | 返回一个新的字符串,它是通过用 newChar 替换此字符串中出现的所有 oldChar 得到的 |
| String replaceAll(String regex, String replacement) | 对象 | 使用给定的 replacement 替换此字符串所有匹配给定的正则表达式的子字符串 |
| String replaceFirst(String regex, String replacement) | 对象 | 使用给定的 replacement 替换此字符串匹配给定的正则表达式的第一个子字符串 |
(4)比较
| 方法 | 类型 | 描述 |
|---|---|---|
| int compareTo(String anotherString) | 对象 | 按字典顺序比较两个字符串,小于、等于、大于 anotherString 对应返回负数、0、正数 |
| int compareToIgnoreCase(String str) | 对象 | 按字典顺序比较两个字符串,不考虑大小写,小于、等于、大于 anotherString 对应返回负数、0、正数 |
| boolean contentEquals(StringBuffer sb) | 对象 | 将此字符串与指定的 StringBuffer 比较 |
| boolean endsWith(String suffix) | 对象 | 测试此字符串是否以指定的后缀结束 |
| boolean startsWith(String prefix) | 对象 | 测试此字符串是否以指定的前缀开始 |
| boolean startsWith(String prefix, int toffset) | 对象 | 测试此字符串从指定索引开始的子字符串是否以指定前缀开始 |
| boolean equals(Object anObject) | 对象 | 将此字符串与指定的对象比较 |
| boolean equalsIgnoreCase(String anotherString) | 对象 | 将此 String 与另一个 String 比较,不考虑大小写 |
| boolean matches(String regex) | 对象 | 告知此字符串是否匹配给定的正则表达式 |
(5)byte[]和字符串
| 方法 | 类型 | 描述 |
|---|---|---|
| byte[] getBytes() | 对象 | 使用平台的默认字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中 |
| byte[] getBytes(Charset charset) | 对象 | 使用给定的 charset 将此 String 编码到 byte 序列,并将结果存储到新的 byte 数组 |
| byte[] getBytes(String charsetName) | 对象 | 使用指定的字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中 |
(6)char[]和字符串
| 方法 | 类型 | 描述 |
|---|---|---|
| void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) | 对象 | 将字符从此字符串复制到目标字符数组 |
| char[] toCharArray() | 对象 | 将此字符串转换为一个新的字符数组 |
(7)操作
| 方法 | 类型 | 描述 |
|---|---|---|
| String concat(String str) | 对象 | 将指定字符串 str 连接到此字符串的结尾 |
| String substring(int beginIndex) | 对象 | 返回一个新的字符串,它是此字符串的一个子字符串 |
| String substring(int beginIndex, int endIndex) | 对象 | 返回一个新字符串,它是此字符串的一个子字符串 |
| String toLowerCase() | 对象 | 使用默认语言环境的规则将此 String 中的所有字符都转换为小写 |
| String toUpperCase() | 对象 | 使用默认语言环境的规则将此 String 中的所有字符都转换为大写 |
(8)valueOf():基本数据类型 -> 字符串
| 方法 | 类型 | 描述 |
|---|---|---|
| static String valueOf(boolean b) | 类 | 返回 boolean 参数的字符串表示形式 |
| static String valueOf(char c) | 类 | 返回 char 参数的字符串表示形式 |
| static String valueOf(char[] data) | 类 | 返回 char 数组参数的字符串表示形式 |
| static String valueOf(char[] data, int offset, int count) | 类 | 返回 char 数组参数的特定子数组的字符串表示形式 |
| static String valueOf(double d) | 类 | 返回 double 参数的字符串表示形式 |
| static String valueOf(float f) | 类 | 返回 float 参数的字符串表示形式 |
| static String valueOf(int i) | 类 | 返回 int 参数的字符串表示形式 |
| static String valueOf(long l) | 类 | 返回 long 参数的字符串表示形式 |
| static String valueOf(Object obj) | 类 | 返回 Object 参数的字符串表示形式 |
(9)其他
| 方法 | 类型 | 描述 |
|---|---|---|
| int hashCode() | 对象 | 返回此字符串的哈希码 |
| boolean isEmpty() | 对象 | 当且仅当 length() 为 0 时返回 true |
| int length() | 对象 | 返回此字符串的长度 |
| String[] split(String regex) | 对象 | 根据给定正则表达式的匹配拆分此字符串 |
| String toString() | 对象 | 返回此对象本身(它已经是一个字符串!) |
| String trim() | 对象 | 返回字符串的副本,忽略前导空白和尾部空白 |
三、可变字符串 StringBuffer 类型
参考文档:[官方 Java SE 11 文档] [中文 Java SE 11 文档]
加上包名为 java.lang.StringBuffer,与 java.lang.StringBuilder 类似,前者线程安全。
(1)构造方法
| 方法 | 描述 |
|---|---|
| StringBuffer() | 构造一个字符串缓冲区,其中没有字符,初始容量为16个字符。 |
| StringBuffer(int capacity) | 构造一个字符串缓冲区,其中没有字符,指定初始容量为 capacity |
| StringBuffer(String str) | 构造一个初始化为指定字符串内容的字符串缓冲区 |
(2)append():追加
| 方法 | 类型 | 描述 |
|---|---|---|
| StringBuffer append(int i) | 对象 | 将 int 参数的字符串表示形式追加到此序列,形参可换成其他基本数据类型 |
| StringBuffer append(char[] str) | 对象 | 将 char 数组参数的字符串表示形式追加到此序列 |
| StringBuffer append(char[] str, int offset, int len) | 对象 | 将 char 数组参数的子数组的字符串表示形式追加到此序列 |
| StringBuffer append(Object obj) | 对象 | 追加 Object参数的字符串表示形式 |
| StringBuffer append(String str) | 对象 | 将指定的字符串 str 追加到此字符序列 |
| StringBuffer append(StringBuffer sb) | 对象 | 将指定的 StringBuffer 追加到此序列 |
(3)insert():插入
| 方法 | 类型 | 描述 |
|---|---|---|
| StringBuffer insert(int offset, boolean b) | 对象 | 将 boolean 参数的字符串表示形式插入此序列中,形参可换成其他基本数据类型 |
| StringBuffer insert(int offset, char[] str) | 对象 | 将 char 数组参数的字符串表示形式插入此序列中 |
| StringBuffer insert(int index, char[] str, int offset, int len) | 对象 | 将 str 数组参数的子数组的字符串表示形式插入此序列中 |
| StringBuffer insert(int offset, Object obj) | 对象 | 将 Object 参数的字符串表示形式插入此字符序列 |
| StringBuffer insert(int offset, String str) | 对象 | 将字符串 str 插入此字符序列 |
(4)查找、删除和替换
| 方法 | 类型 | 描述 |
|---|---|---|
| char charAt(int index) | 对象 | 返回指定索引处的此序列中的 char 值 |
| void setCharAt(int index, char ch) | 对象 | 指定索引处的字符设置为 ch |
| void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) | 对象 | 将字符从此序列复制到目标字符数组 dst |
| int indexOf(String str) | 对象 | 返回指定子字符串第一次出现的字符串中的索引 |
| int indexOf(String str, int fromIndex) | 对象 | 从指定的索引处开始,返回指定子字符串第一次出现的字符串中的索引 |
| int lastIndexOf(String str) | 对象 | 返回指定子字符串最后一次出现的字符串中的索引 |
| int lastIndexOf(String str, int fromIndex) | 对象 | 返回指定子字符串最后一次出现的字符串中的索引,从指定索引开始向后搜索 |
| StringBuffer delete(int start, int end) | 对象 | 删除此序列的子字符串中的字符 |
| StringBuffer deleteCharAt(int index) | 对象 | 按此顺序删除指定位置的 char |
| StringBuffer replace(int start, int end, String str) | 对象 | 使用指定的 String的字符替换此序列的子字符串中的字符 |
(5)其他
| 方法 | 类型 | 描述 |
|---|---|---|
| int capacity() | 对象 | 返回当前容量 |
| int length() | 对象 | 返回长度(字符数) |
| void trimToSize() | 对象 | 尝试减少用于字符序列的存储空间 |
| String substring(int start) | 对象 | 返回一个新的 String ,其中包含此字符序列中当前包含的字符的子序列 |
| String substring(int start, int end) | 对象 | 返回一个新的 String ,其中包含当前包含在此序列中的字符的子序列 |

浙公网安备 33010602011771号