【发布时间】:2014-06-30 23:59:18
【问题描述】:
我正在构建一个库,我的一些方法的参数应该在特定范围内。例如,在此方法中,button 应介于 1 和 3 之间:
public static void pressMouse(int button){
try{
Robot robot = new Robot();
if(button == 1){
robot.mousePress(InputEvent.BUTTON1_MASK);
}else if(button == 2){
robot.mousePress(InputEvent.BUTTON3_MASK);
}else{
robot.mousePress(InputEvent.BUTTON3_DOWN_MASK);
}
}catch(Exception e){
}
}
如果值无效,有什么方法可以引发编译时错误?例如
TestLib.pressMouse(4);
我可以在方法中抛出一个异常,但如果有更好的方法会很酷。
【问题讨论】:
-
只是一个提示,因为 Elliott 涵盖了主要思想——如果你有一组在编译时知道的给定值,那么这是对枚举的完美使用。是的,如果你最终得到大量可能的值,那可能会很尴尬。不过类型安全性很好。
标签: java methods parameters