【发布时间】:2012-10-26 14:44:34
【问题描述】:
我想知道是否可以通过将函数名称添加到参数来调用另一个函数。因此,例如,我想制作一个包含 4 个部分的脚本。每个部分都需要输入(我使用的是扫描仪,不要问为什么 :P 它的任务),然后需要将其传递给另一个脚本,例如计算和东西。
我从这个开始:
static int intKiezer(String returnFunctie, String text) {
Scanner vrager = new Scanner(System.in);
while (true) {
System.out.println(text);
int intGekozen = vrager.nextInt();
if (vrager.hasNextInt()) {
returnFunctie(intGekozen);
}
else {
vrager.next();
System.out.println("Verkeerde invoer!");
}
}
如您所见,我试图通过调用它(returnFunctie(intgekozen))将获得的值推送到另一个函数。它应该以 intgekozen 作为参数调用 returnFunctie。但它不起作用
我会这样调用函数:intKiezer(sphereCalculations, "What radius do you want to have?")。所以输入的答案,如果正确的话,应该传递给另一个名为 sphereCalculations 的函数
【问题讨论】:
-
代码中的 returnFunctie(...) 在哪里?
-
这在原则上可以通过反射实现,但真正的问题是:你为什么要这样做?这表明你的程序有一个奇怪的设计。 (反射应该只用于特殊情况,我不想学习你的坏习惯)。
-
问题是我有多个输入,我想为它们创建一个函数。不只是在每个功能中说明扫描仪类,例如这对我来说似乎是最简单的方法,因为我只需要添加一个文本和一个函数名
标签: java function parameter-passing