【Android面试】字符串拆分及字符串组合

将字符串拆分成数组和实现字符串组合\n不能使用语言的基本分割组合函数(如 Java 的 String.split, php 的 explode 和 implode)

1)字符串拆分成字符串数组,如"ab&&2"通过"&&“做分割符,分割得到字符串数组[“ab”, “2”]

2)实现字符串组合,如[“ab”, “2”]通过”&&“分隔符,组成字符串"ab&&2”

字符串拆分成字符串数组

public static String[] splitString(String str, String delimiter) {
    
    
    ArrayList<String> list = new ArrayList<>();
    int len = delimiter.length();
    int start = 0;
    int i = 0;
    while (i < str.length() - len + 1) {
    
    
        if (str.substring(i, i + len).equals(delimiter)) {
    
    
            list.add(str.substring(start, i));
            start = i + len;
            i = start;
        } else {
    
    
            i ++;
        }
    }
    list.add(str.substring(start));
    return list.toArray(new String[0]);
}

实现字符串组合

public static String combineStrings(String[] strArr, String delimiter) {
    
    
    StringBuilder sb = new StringBuilder();
    for (int i = 0; i < strArr.length - 1; i++) {
    
    
        sb.append(strArr[i]);
        sb.append(delimiter);
    }
    sb.append(strArr[strArr.length - 1]);
    return sb.toString();
}

猜你喜欢

转载自blog.csdn.net/qFAFAF/article/details/130743049