首页 > 解决方案 > 有没有办法给一个函数两个随机参数,并让它们相同?

问题描述

假设我想调用一个内置函数(这意味着我无法更改它):

foo(int x,  int y)

我希望 x 和 y 的参数是随机的,但是是相同的随机数。我知道我可以做到这一点

double rand = Math.random();
foo(rand, rand);

但是,有没有办法在一行中做到这一点,而不声明一个单独的变量?如

foo(Math.random(), Math.random());

但让它们相同。只是好奇是否有一种简单的方法可以做到这一点,我不知道这可以避免添加额外的行。也许我可以输入第二个参数,基本上告诉它“使它与第一个参数相同”?任何帮助是极大的赞赏。

标签: java

解决方案


是的,所以这可以通过创建另一个采用 1 个参数并调用原始方法的方法来轻松完成。这确保调用此方法时值始终相同。如果您不希望公开使用原始 foo(int, int) ,请不要公开它并将其隐藏为包私有或私有。

foo(int value) {
    foo(value, value);
}
foo(Math.random());

推荐阅读