我有一个函数,该函数具有1个类型为String的参数/参数:
public void foo(String myParam)
{
//do something
}
如果字符串的可能值受到限制(例如“ test”,“ test2”和“ test3”),则myParam的任何不同值都将导致错误。
是否有可能限制myParam的可能值而无须检查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/