多个 IF 不起作用

Multiple IFs won't work

我正在使用 C# 为 Windows 创建桌面应用程序(控制台)。

这是我的代码:

namespace myapp
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello!");
            Console.WriteLine("Type 'exit' to exit!");
            string line = Console.ReadLine();
            if (line == "exit") {
                Environment.Exit(0);
            }
            if (line == "copyright") {
                Console.WriteLine("Copyright 2017 TIVJ-dev");
            }
        }
    }
}

如果我键入 "exit",它会正常工作(我确定它会执行此 Environment.Exit(0); 操作)。但是如果我输入 "copyright",它就不起作用。我可以看到一个空行。我今天开始使用 C#,如果这是一个非常初学者的问题,我深表歉意。我还没有在互联网上找到解决方案。

截图:

我不确定它以什么方式不起作用。应该运行

Console.WriteLine("Copyright 2017 TIVJ-dev");

然后立即关闭控制台window。试试再放一个

Console.ReadLine();

在 Main() 的末尾。

您可以使用 else if 语句;

   namespace myapp
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello!");
            Console.WriteLine("Type 'exit' to exit!");
            string line = Console.ReadLine();
            if (line == "exit")
            {
                Environment.Exit(0);
            }
            else if (line == "copyright") {
                Console.WriteLine("Copyright 2017 TIVJ-dev");
            }
        }
    }
}

编辑

通过使用 if/else 这与使用多个 if 语句的效果相同,但是这是一种更有效的方法,并且在使用断点时更容易。

尝试在 visual studio 中按 ctrl F5 启动应用程序,看看它是否有效。或者点击 debug->start without debugging。

然后输入"copyright"并回车。

可能发生的情况是控制台正在打印该行,然后在您有机会看到它之前关闭。当您不使用调试器时,即使应用程序完成,控制台也会保持打开状态。

现在大家:现在这个项目可以正常运行了!感谢那些说再添加一个 Console.ReadLine 的人。当我测试 else if 时,我忘了还有那个。但现在它起作用了,所以我试着关闭它。谢谢大家!