我有一个函数,它有 1 个字符串类型的参数/参数:
public void foo(String myParam)
{
//do something
}
字符串的可能值受到限制(例如“test”、“test2”和“test3”),任何不同的 myParam 值都会导致错误。
是否可以在没有检查 myParam 值的 switch case 的情况下限制 myParam 的可能值?
也可以将不同的对象传递给我的函数,它包装了我需要的实际值。
是否有针对该问题的标准/最佳解决方案?
最佳答案
你可以创建一个枚举
public enum MyParam
{
test,
test2,
test3
}
并使用 ToString
获取您的 enum
的字符串表示形式
public void foo(MyParam myParam)
{
if(!Enum.IsDefined(typeof(MyParam),myParam))
throw new ArgumentException();
myParamString = myParam.ToString();
}
关于c# - 特定值作为函数的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15247680/