#yyds干货盘点#【愚公系列】2023年02月 .NET/C#知识点-List转成字符串的总结

时间:2021-04-27 00:37:20

前言

List转成字符串的总结的应用场景非常广泛,可以用于字符串拼接、数据处理和存储、显示等方面。它还可以用于格式化输出,以及将列表数据导出到文本文件等。

.NET实现List转字符串的方式主要有如下:

  • for
  • Linq
  • String.Join

一、List转成字符串的总结

1.for

for循环是一种结构,它可以重复执行一系列语句,直到指定的条件不再满足。它通常用于遍历数组或字符串,或者在某个特定的条件被满足之前执行某项任务。

// C# string数组
using System.Diagnostics;

List<string> list = new List<string>(){"三体人","史强","宇宙闪烁","汪淼","低维展开"};

//---------------------------------------------------使用for循环------------------------------------------------
Stopwatch sw = new Stopwatch();
sw.Start();

string result = "";

for (int i = 0; i < list.Count; i++)
{
    result = result + list[i] + ",";
}
sw.Stop();

Console.WriteLine($"程序耗时:{sw.ElapsedMilliseconds}ms.");

Console.WriteLine("循环方式实现结果: " + result);
//去掉最后一个","使用TrimEnd。
Console.WriteLine("循环方式实现结果: " + result.TrimEnd(','));

#yyds干货盘点#【愚公系列】2023年02月 .NET/C#知识点-List转成字符串的总结

2.String.Join

String.Join 是 .NET Framework 中的一个静态方法,其功能是将一个字符串数组中的所有字符串连接起来,形成一个新的字符串,并用一个分隔符来分隔每个字符串。

// C# string数组
using System.Diagnostics;

List<string> list = new List<string>(){"三体人","史强","宇宙闪烁","汪淼","低维展开"};

//---------------------------------------------------使用String.Join------------------------------------------------
Stopwatch sw = new Stopwatch();
sw.Start();

string result = String.Join(",", list);

sw.Stop();
Console.WriteLine($"程序耗时:{sw.ElapsedMilliseconds}ms.");

Console.WriteLine("String.Join方式实现结果: " + result.TrimEnd(','));

#yyds干货盘点#【愚公系列】2023年02月 .NET/C#知识点-List转成字符串的总结

3.Linq

// C# string数组
using System.Diagnostics;

List<string> list = new List<string>(){"三体人","史强","宇宙闪烁","汪淼","低维展开"};

//---------------------------------------------------使用String.Join------------------------------------------------
Stopwatch sw = new Stopwatch();
sw.Start();

string result = list.Aggregate("", (current, s) => current + (s + ","));

sw.Stop();
Console.WriteLine($"程序耗时:{sw.ElapsedMilliseconds}ms.");

Console.WriteLine("String.Join方式实现结果: " + result.TrimEnd(','));

#yyds干货盘点#【愚公系列】2023年02月 .NET/C#知识点-List转成字符串的总结 linq用聚合函数的方式来实现累加,聚合函数里是一个委托。

总结

对于已三三种方式的总结

  • for:性能比较好,但是相对比较复杂,代码量多
  • String.Join:性能比较好,简单
  • Linq:性能比较差,简单