You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#列表反转后输出异常求助:如何正确反转并显示列表元素

解决C#列表反转后控制台输出类型名的问题

嘿,我来帮你搞定这个问题!其实你的列表声明和反转操作都没问题,问题出在你直接打印List对象的方式上。

当你调用Console.WriteLine(list)时,C#默认会调用List的ToString()方法,而这个方法的默认实现只会返回对象的类型名称(也就是你看到的System.Collections.Generic.List1[System.String]`),不会帮你遍历并输出列表里的元素。

几种正确的输出方式:

1. 使用string.Join拼接元素(最简洁)

把列表元素用分隔符(比如逗号+空格)拼接成一个字符串再输出:

class Program {
 static void Main(string[] args) {
 List<string> list = new List<string>(new string[]{"Monday", "Tuesday", "Wednesday", "Thursday", "Friday"});
 list.Reverse();
 // 用逗号分隔拼接所有元素
 Console.WriteLine(string.Join(", ", list));
 Console.ReadLine();
 }
}

运行后会输出:Friday, Thursday, Wednesday, Tuesday, Monday

2. 用foreach循环逐个输出

如果想每个元素单独占一行,或者需要自定义输出格式,可以用foreach遍历:

class Program {
 static void Main(string[] args) {
 List<string> list = new List<string>(new string[]{"Monday", "Tuesday", "Wednesday", "Thursday", "Friday"});
 list.Reverse();
 foreach (string day in list)
 {
     Console.WriteLine(day);
 }
 Console.ReadLine();
 }
}

这样会每行输出一个星期几。

总结一下:你的列表反转逻辑完全正确,只是输出时没有正确处理列表元素的展示,换成上面的方式就能看到预期结果啦!

内容的提问来源于stack exchange,提问作者Shaan Kulkarni

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 07:01:00