2011-10-28 92 views
0

我有一个方法,需要5个双精度值,并与他们一起执行一个操作。现在参数列表是五个不同的双打。有没有办法将double[]作为参数传递给该方法,但要确保其长度恰好为5?Java:将预定长度的数组设置为方法参数?

一种方法是这样的:

private void myMethod(double[] args) { 
    if (args.length == 5) { 
     // do something 
    } 
} 

,但有没有更好的办法?

回答

3

如果你知道你需要5个双打,那么我认为你最好要求5个不同的双打。让他们用有意义的名字列出来,它仍然会很难(即使在intellisense或任何它被称为的),以保持变量的顺序。如果它们在数组中,那么用户需要查阅文档以查看哪个值应该在哪个索引中进行。

0

不能。您不能限制传递给函数的数组长度。

如果您的目标是保持检查代码不在方法中,因此它更干净,您可以将实际工作委派给其他方法。

如果你关心的是参数列表的长度,你可以传递一个参数对象。

0

你可以创建一个类,它是Vector的一个专门化限于5双打,但它似乎是矫枉过正。如果数组中的条目太少或太多,我只会引发异常 - 这可能是编程问题,而不是运行时异常。

0

你可以把你的代码放在try-catch块中。这提供了错过不必要的检查。 但是,如果出现问题,你可以避免异常问题。

相关问题