0

我被困在一个看似简单的点上,可能有一种简单的方法来处理它,但无论如何我都需要帮助。

我需要使用一组常量来评估公式,应该根据用户的选择动态选择。见代码:

double constOne=2.3, constTwo=1.1, constThree=1.7...; //and so on

public double doSomething(int inputOne, String selection){

    //being const... one of the double vars defined above, 
    //selected based on the String selection
    return inputOne*const...; 
}

我知道我可以使用一个双精度数组并将数组上的位置传递给 doSomething() 来做到这一点,但这是非常硬编码的,我真的不喜欢那样做。

有没有办法动态引用 constOne、constTwo 等?谢谢!

PS:是的,我知道这可能是一个愚蠢的问题,我正在学习!

4

1 回答 1

1

我真的没有看到在数组中声明常量的问题。

但是,如果您真的反对,您可以编写一个辅助函数,该函数将接收选择器字符串并返回常量。这可以让你的代码更干净

double getConstant(String selector) {
    // some logic
}

那么你的其他功能会更干净一些

public double doSomething(int inputOne, String selection){

    //being const... one of the double vars defined above, 
    //selected based on the String selection
    return inputOne * getConstant(selection); 
}

这样做的好处是您从选择器中选择常量的逻辑将在一个地方,而不是在您需要常量的所有函数中。

于 2013-03-10T19:32:15.150 回答