我是c#的新手并且有一个问题,如何打印字符串数组列表?我可以使用Console.WriteLine从string []执行此操作,但如果我使用forEach执行此操作,则只打印出System.String [],如何为每个使用时编写索引?
答案 0 :(得分:11)
最简单的方法是: 使用 String.Join
string[] arr = new string[] { "one", "two", "three", "four" };
Console.WriteLine(String.Join("\n", sarr));
希望这有帮助。
答案 1 :(得分:2)
所以你有字符串数组列表,如下所示:
List<string[]> data = new List<string[]>() {
new string[] {"A", "B", "C"},
new string[] {"1", "2"},
new string[] {"x", "yyyy", "zzz", "final"},
};
要打印,比如Console
,您可以实现嵌套循环:
foreach (var array in data) {
Console.WriteLine();
foreach (var item in array) {
Console.Write(" ");
Console.Write(item);
}
}
或Join
将这些项目放入单string
,然后将其打印出来:
using System.Linq;
...
string report = string.Join(Environment.NewLine, data
.Select(array => string.Join(" ", array)));
Console.Write(report);
或结合两种方法:
foreach (var array in data)
Console.WriteLine(string.Join(" ", array));
答案 2 :(得分:2)
string[] arr = new string[2]{"foo","zoo"}; // sample Initialize.
// Loop over strings.
foreach (string s in arr)
{
Console.WriteLine(s);
}
控制台输出:
foo
zoo
答案 3 :(得分:0)
这对我有用:
var strArray = new string[] {"abc","def","asd" };
strArray.ToList().ForEach(Console.WriteLine);
答案 4 :(得分:0)
在用于获取索引的字符串数组中:
string[] names = new string[3] { "Matt", "Joanne", "Robert" };
int counter = 0;
foreach(var name in names.ToList())
{
Console.WriteLine(counter.ToString() + ":-" + name);
counter++;
}