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

为何控制台在输入标题后直接关闭?C#程序问题求助

问题原因

你代码里的new List<Book>(3)只是设置了列表的初始容量,并非自动创建3个Book实例,列表此时是空的。所以foreach循环没有任何元素可以迭代,代码执行完后程序直接退出,导致你误以为输入后程序关闭。

修正方案

方案一:先填充空Book实例再赋值

var books = new List<Book>(3);
// 先添加3个空Book对象到列表
for (int i = 0; i < 3; i++)
{
    books.Add(new Book());
}

foreach (Book item in books)
{               
    item.Title = Console.ReadLine();
    item.Countofpage = int.Parse(Console.ReadLine());                
}

方案二:循环中创建并添加Book(更高效)

var books = new List<Book>(3);
for (int i = 0; i < 3; i++)
{
    var book = new Book();
    book.Title = Console.ReadLine();
    book.Countofpage = int.Parse(Console.ReadLine());
    books.Add(book);
}
额外提示

如果不想程序执行完立刻关闭,可在代码末尾添加:

Console.WriteLine("按任意键退出...");
Console.ReadKey();

内容的提问来源于stack exchange,提问作者Vasёк Play

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 04:25:31