【发布时间】:2021-12-31 06:53:26
【问题描述】:
我需要转换包含一个长字符串的字符串列表,其中值用, 和\n 分隔。示例:
string[] namesArray = {"Name1,Surname1", "Name2,Surname2", "Name3,Surname3"};`
string nameSting = "";
foreach(string nameFromArray in namesArray) {
nameSting += nameFromArray + "\n";
}
List<string> namesList = new List<string>();
namesList.Add(nameSting);
我的问题是如何处理namesList 以便Console.WriteLine 输出以下格式:
1. Name1 Surname1
2. Name2 Surname2
3. Name3 Surname3
请注意,以上任何内容都无法更改。我知道这是一个奇怪的代码,但它是一种非常简化的方式来显示 API 如何返回需要以上述格式转换的数据。
【问题讨论】:
-
您可以将您的字符串按
\n和,拆分,然后根据需要收集您的(姓名、姓氏)对吗?还是有一些额外的限制阻止这样做? -
问题中发布的代码似乎正在按照您的描述进行操作,但效率非常低。您应该考虑将其更改为使用字符串构建器或简单地 string.Join (我怀疑在某些情况下它会比字符串构建器做得更好)。
-
不幸的是,代码无法更改。我试图用这样的循环输出它:` foreach(var x in namesList){ Console.WriteLine(x.Replace(",", " ")); }` 但是我还需要在每个名称之前添加索引,因此如果将来字符串变长,循环仍将跟踪顺序。
-
您正在创建一个仅存储在项目上的列表,为什么是列表??
-
其实我没有看到问题,你需要增量索引吗?您的代码中的控制台打印在哪里?具体要求是什么,请create a Minimal, Reproducible Example显示你有什么和你期望什么。