当前位置:  开发笔记 > 编程语言 > 正文

有没有办法在Switch语句中执行某些代码,只有在传递了任何案例时才会执行?

如何解决《有没有办法在Switch语句中执行某些代码,只有在传递了任何案例时才会执行?》经验,为你挑选了1个好方法。

有没有办法可以为每个"Case"执行相同的代码行,但只需要输入一次而不是为所有Case指定相同的代码?

        switch (SomeTest)
        {
            case "test1":
                {
                    // Do something for test 1 
                    break;
                }
            case "test2":
                {
                    // Do something for test 2 
                    break;
                }
            case "test3":
                {
                    // Do something for test 3 
                    break;
                }
            // =====> Then do something generic here for example if case is test1, test2 or test3
        }

Garry Shutle.. 7

你可能在想它吗?

switch(SomeTest)
{
    // specific stuff
}

// code you want running for every case

否则,你可以做的最好的事情是没有设置标志或什么:

switch(SomeTest)
{
    // specific stuff
}

switch(SomeTest)
{
    case "Test1", "Test2", "Test3":
        // stuff for the matching cases
}

或者,如果您想为匹配的每个案例运行代码:

bool runGenericStuff = true;

switch(SomeTest)
{
    // specific stuff
    default:
        runGenericStuff = false;
}

if (runGenericStuff)
{
    // run generic stuff
}

这可以节省您在每种情况下都必须设置标志.



1> Garry Shutle..:

你可能在想它吗?

switch(SomeTest)
{
    // specific stuff
}

// code you want running for every case

否则,你可以做的最好的事情是没有设置标志或什么:

switch(SomeTest)
{
    // specific stuff
}

switch(SomeTest)
{
    case "Test1", "Test2", "Test3":
        // stuff for the matching cases
}

或者,如果您想为匹配的每个案例运行代码:

bool runGenericStuff = true;

switch(SomeTest)
{
    // specific stuff
    default:
        runGenericStuff = false;
}

if (runGenericStuff)
{
    // run generic stuff
}

这可以节省您在每种情况下都必须设置标志.

推荐阅读
pan2502851807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有