實現接口 `ElementJoiner`:
`String join(T[] ts, String delimiter)`
`String join(Collection
要求:空數組/集合返回空串或分隔符,null 分隔符視為空串,末尾不加分隔符。
public class ElementJoinerImpl implements ElementJoiner {
@Override
public String join(T[] ts, String delimiter) {
if (delimiter == null) delimiter = "";
if (ts == null || ts.length == 0) return delimiter;
StringBuilder sb = new StringBuilder();
for (int i = 0; i < ts.length - 1; i++) {
sb.append(ts[i]).append(delimiter);
}
sb.append(ts[ts.length - 1]);
return sb.toString();
}
@Override
public String join(Collection ts, String delimiter) {
if (delimiter == null) delimiter = "";
if (ts == null || ts.isEmpty()) return delimiter;
StringBuilder sb = new StringBuilder();
Iterator it = ts.iterator();
while (it.hasNext()) {
sb.append(it.next()).append(delimiter);
}
sb.setLength(sb.length() - delimiter.length()); // 移除末尾分隔符
return sb.toString();
}
}
public static void main(String[] args) {
ElementJoiner ej = new ElementJoinerImpl();
System.out.println(ej.join(new Integer[]{1,2,3}, "/")); // 1/2/3
List list = Arrays.asList(1,2,3);
System.out.println(ej.join(list, "~ ")); // 1~ 2~ 3
}