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

举报
愚公搬代码 发表于 2023/03/30 21:38:55 2023/03/30
1.5k+ 0 0
【摘要】 前言List转成字符串的总结的应用场景非常广泛,可以用于字符串拼接、数据处理和存储、显示等方面。它还可以用于格式化输出,以及将列表数据导出到文本文件等。.NET实现List转字符串的方式主要有如下:forLinqString.Join 一、List转成字符串的总结 1.forfor循环是一种结构,它可以重复执行一系列语句,直到指定的条件不再满足。它通常用于遍历数组或字符串,或者在某个特定的...

前言

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(','));

image.png

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(','));

image.png

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(','));

image.png

linq用聚合函数的方式来实现累加,聚合函数里是一个委托。

总结

对于已三三种方式的总结

  • for:性能比较好,但是相对比较复杂,代码量多
  • String.Join:性能比较好,简单
  • Linq:性能比较差,简单
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

作者其他文章

评论(0

抱歉,系统识别当前为高风险访问,暂不支持该操作

    全部回复

    上滑加载中

    设置昵称

    在此一键设置昵称,即可参与社区互动!

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。