字符串与数组转换
// 字符串 字符数组 相互转换
public static void string_char_convert(){
String s = "zhr.zz 156 789";
// 字符串转数组
Character[] cs = new Character[s.length()];
for (int i = 0; i < s.length(); i++) {
cs[i] = (Character) s.charAt(i);
}
ArrayTool.printArray(cs);
// 分割字符串
String[] cs2 = s.split(" ");
ArrayTool.printArray(cs2);
int[] nums = {1, 2, 3};
// Arrays.toString 数组转字符串 [1, 2, 3]
String s2 = Arrays.toString(cs);
String s3 = Arrays.toString(nums);
System.out.println(s2);
System.out.println(s3);
// 数组转字符串 123,使用StringBuilder.append,再转为string
StringBuilder sb = new StringBuilder();
for (int i = 0; i < nums.length; i++) {
sb.append(nums[i]);
}
String s4 = sb.toString();
System.out.println(s4);
}
字符串索引
// 索引
public static void index(){
String s = "defrhj";
// index 返回第一次出现的位置,不存在返回-1
System.out.println(s.indexOf("ef"));
System.out.println(s.indexOf("g"));
}
字符串分割
// 分割
public static void splitStr(){
String s = "dd.aa*p...***aaa";
// 点号星号在正则表达式中是特殊字符,匹配任意字符,所以要加反斜杠转义
String[] ss = s.split("\\.");
String[] ss2 = s.split("\\*", -1);
// 第二个参数为分割的份数,默认为全分割,-1为空白的也分割,如aaaa
String[] ss3 = s.split("a", -1);
ArrayTool.printArray(ss);
ArrayTool.printArray(ss2);
System.out.println(ss3.length);
}