Java的字符串由String类来构造,一个String值是一串可以由索引访问的char值。

字符串遍历
String str = "acdfjkl";
-
直接利用索引
for (int i = 0; i < str.length(); i++){ char ch = str.charAt(i); } -
转化为字符数组(推荐此方法)
char[] ch = str.toCharArray(); for (char c : ch){ System.out.println(c); }
类型转换
-
将
String类型转换为基本的数据类型:String str1 = "123"; String str2 = "45.6"; String str3 = "true"; int a = Integer.parseInt(str1); // 123 double d = Double.parseDouble(str2); // 45.6 boolean flag = Boolean.parseBoolean(str3); // true -
将基本的数据类型转换为
String类型:int a = 123; double d = 45.6; boolean flag = true; String str1 = a + ""; String str2 = d + ""; String str3 = flag + "";
取子字符串
由于java中的String类型是不可变类型,所以对原字符串取子串实际上是实例化了一个新的字符串。
String str = "abcdefgh";
subStr = str.subString(2, 5); // cde
分割字符串
在java中分割字符串是通过正则表达式来进行分割,返回字符串数组:
String str = "aa bb cc dd";
String[] res = str.split(" "); // [aa, bb, cc, dd]
// split()函数接受的参数为正则表达式。
可变字符串
由于String类是不可变类型,为了便于对字符串进行操作,提出了StringBuilder类来直接对字符串进行操作。支持可变字符串的还有StringBuffer类,区别在于StringBuffer支持多线程安全,而StringBuilder的效率更高。
StringBuilder的常用操作如下:
-
构造函数(四种)
StringBuilder()– 内容为空,并设置容量为16个字节;StringBuilder(CharSequece seq)– 使用seq初始化,容量在此基础上增加16StringBuilder(int capacity)– 设置特定容量StringBuilder(String str)– 使用str初始化,容量在此基础上增加16
-
append方法StringBuilder类对几乎所有的基本类型都重载了append方法,并支持直接append数组。append(int a)– 支持所有基本类型append(char[] arr)– 直接增加数组append(char[] arr, int offset, int len)append(String str)
-
insert方法insert方法可以在指定位置插入字符、字符串和数组insert(int offset, char c)– 支持所有的基本类型insert(int index, char[] arr, int offset, int len)– 插入字符数组insert(int offset, String str)– 插入字符串
-
其它常用方法(可改变内容)
delete(int start, int end)– 删除[start, end)区间的字符串deleteCharAt(int index)– 删除index位置的字符reverse()– 字符串反转;setCharAt(int index, char ch)– 使用ch替代位置index处的字符replace(int start, int end, String str)– 使用str替换子序列setLength(int newLength)– 重新设置字符串长度
676

被折叠的 条评论
为什么被折叠?



