如何在 C# 中创建一个采用多组值的方法?

How do you create a method in C# that takes a multiple set amount of values?

我想知道在 C# 中我将如何着手创建一个采用几个设置值的方法,有点像枚举。

public static void SwitchState(enum State { On, Off, Idle }) {

}

类似的东西我不知道...我不想将字符串传递到方法中,因为那样我必须记住这些字符串是什么。

public enum State { On, Off, Idle }    

public static void SwitchState(State state) {
   // ...
}

你实际上可以像这样使用枚举

public enum SpotifyAction
{
            PlayPause,
            Next,
            Previous,
            VolumeUp,
            VolumeDown,
            Mute,
            Quit
};

public static void controlSpotify(SpotifyAction sa)
{
            BringToForeground("Spotify");

            switch (sa)
            {
                case SpotifyAction.Next:
                    SendKeys.SendWait("^({RIGHT})");
                    break;
                case SpotifyAction.Previous:
                    SendKeys.SendWait("^({LEFT})");
                    break;
                case SpotifyAction.VolumeUp:
                    SendKeys.SendWait("^({UP})");
                    break;
                case SpotifyAction.VolumeDown:
                    SendKeys.SendWait("^({DOWN})");
                    break;
                case SpotifyAction.PlayPause:
                    SendKeys.SendWait(" ");
                    break;
            }
}

您只需创建一个枚举,然后将其传递给方法。

public enum State
{
        On, 
        Off,
        Idle
}

private void SwitchState(State stateValue)
{

}

private void testCall()
{
    SwitchState(State.Idle);
}
void Main()
{
    SwitchState(State.On | State.Off);
}

public void SwitchState(State s)
{
    //...
}

public enum State
{
    None = 0,
    On = 1,
    Off = 2,
    Idle = 4
}