列表元素的类型 * @param separator 分隔符,用于连接各个元素 * @param list 待连接的元素列表 * @param fun 转换函数,用于将列表元素转换为字符串,如果为null则使用toString()方法 * @return 连接后的字符串,如果列表为空或null则返回空字符串 */ public static
String join( String separator, List
list, P1R1Function
fun
) {
// 处理空列表情况
if (list == null || list.isEmpty()) {
return "";
}
// 构建结果字符串
StringBuilder sb = StringUtil.stringBuilder(list.size() * 16);
for (int i = 0; i < list.size(); i++) {
P item = list.get(i);
// 将元素转换为字符串
String itemStr = fun == null
? (item == null ? "null" : item.toString())
: fun.call(item);
// 第一个元素直接添加,其他元素先添加分隔符再添加元素
if (i == 0) {
sb.append(itemStr);
} else {
sb.append(separator).append(itemStr);
}
}
return sb.toString();
}
/**
* 使用指定分隔符连接字符串列表
*
* @param separator 分隔符,不能为null
* @param list 字符串列表,不能为null
* @return 连接后的字符串
* @throws IllegalArgumentException 当separator或list为null时抛出
*/
public static String join(String separator, List