不从循环返回值

Rez*_*bur 1 c# methods loops return

因此,如果我创建一个应该返回值的方法,那么它不会.我知道我可以很容易地用void做,但任何人都可以解释为什么循环不返回值这里是一个简单的例子.

public static int EvenNumberGenerator(int y)
{
    for (int x = 0; x <= y; x++)
    {
        if (x % 2 == 1)
        {
            continue;
        }

        return x;
    }
}
Run Code Online (Sandbox Code Playgroud)

我也通过移动继续部分尝试它,只是用两个递增它但它仍然会说不是所有路径都返回值.

gio*_*gim 5

它仍然会说并非所有路径都返回值

它说,因为如果会发生y<0什么?循环未运行且没有return执行语句.

在你的情况下,如果y>=0它会立即返回(0),这是你想要的吗?