/// <summary> /// Join<br /> /// 连接 /// </summary> /// <param name="list"></param> /// <param name="defaultKey"></param> /// <param name="defaultValue"></param> /// <returns></returns> string IMapJoiner.Join(IEnumerable <string> list, string defaultKey, string defaultValue) { var replacer = Options.GetMapReplace <string, string, string, string>(); var middle = new List <string>(); JoinToKeyValuePairString( middle, (c, k, v, _) => c.Add($"{k}{Options.MapSeparator}{v}"), list, defaultKey, defaultValue, s => s, v => v, replacer); return(middle.JoinToString(_on, JoinerUtils.GetMapPredicate(Options))); }
/// <summary> /// Append to...<br /> /// 附加到... /// </summary> /// <typeparam name="T"></typeparam> /// <param name="builder"></param> /// <param name="list"></param> /// <param name="to"></param> /// <returns></returns> StringBuilder IJoiner.AppendTo <T>(StringBuilder builder, IEnumerable <T> list, Func <T, string> to) { CommonJoinUtils.JoinToString(builder, (c, s) => c.Append(s), list, _on, JoinerUtils.GetObjectPredicate <T>(Options), to, replaceFunc: Options.GetReplacer <T>()); return(builder); }
/// <summary> /// Append to...<br /> /// 附加到... /// </summary> /// <param name="builder"></param> /// <param name="list"></param> /// <returns></returns> StringBuilder IJoiner.AppendTo(StringBuilder builder, IEnumerable <string> list) { CommonJoinUtils.JoinToString(builder, (c, s) => c.Append(s), list, _on, JoinerUtils.GetStringPredicate(Options), s => s, Options.GetReplacer <string>()); return(builder); }
/// <summary> /// Join<br /> /// 连接 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="list"></param> /// <param name="to"></param> /// <returns></returns> string IJoiner.Join <T>(IEnumerable <T> list, Func <T, string> to) { return(list.JoinToString(_on, JoinerUtils.GetObjectPredicate <T>(Options), to, Options.GetReplacer <T>())); }
/// <summary> /// Join<br /> /// 连接 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="list"></param> /// <param name="converter"></param> /// <returns></returns> string IJoiner.Join <T>(IEnumerable <T> list, ITypeConverter <T, string> converter) { return(list.JoinToString(_on, JoinerUtils.GetObjectPredicate <T>(Options), converter, replaceFunc: Options.GetReplacer <T>())); }
/// <summary> /// Join<br /> /// 连接 /// </summary> /// <param name="list"></param> /// <returns></returns> string IJoiner.Join(IEnumerable <string> list) { return(list.JoinToString(_on, JoinerUtils.GetStringPredicate(Options), Options.GetReplacer <string>())); }