创建单独的输入和输出模块

时间:2016-03-18 11:09:37

标签: java methods

我正在制作一个程序,用户输入直径,长度,宽度,基数,高度的值。这些值通过一些面积计算得出。计算面积并以各种不同的单位向用户吐出。在制作之后,我将其分成几个子模块(Java中的方法)。

但是,当我分离输入和输出模块时,它不会编译,因为变量是在输入方法中初始化的。

如果我尝试在方法中定义变量(显然不起作用),因为我已经定义并初始化了输入法中的变量。

如何启用输出方法以使用输入方法中用户初始化的变量。

这个想法意味着我的主要是:

Main 
{
    inputInteger();
    inputReal();
    outputCRT(); //CRT = Circle Rectangle Triangle
}

我以为你在以下方法之间传递变量:

outputCRT(int diameter, double length...etc)
{
  all my output
}

但是(我很确定)这意味着当我在我的主要部门打电话时,我必须给它值:

Main 
{
    outputCRT(8, 32.43...etc);
}

但这违背了用户在使用扫描仪时输入自己价值的全部目的。我该如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

如果我明白了,你应该以某种方式在输入模块中收集输入信息" (例如inputInteger()),然后使用"输出模块中的输入" (例如outputCRT(...))。

您可以通过返回输入方法的结果并将它们用作输出方法的参数来实现此目的。例如:

public static void main(String[] args) {
    int diameter = inputInteger();
    double length = inputReal();
    ...
    outputCRT(diameter, length, ...);
}

static int inputInteger() {
    int value = read input in some way;
    return value;
}

static double inputReal() {
    double value = read input in some way;
    return value;
}

答案 1 :(得分:0)

由于这是一个学校项目,您的老师很可能会向您提供增量信息......

您的教师似乎希望您在课程中使用全局变量,然后让您使用它们。这样,inputInteger函数将设置一组变量,然后inputReal将设置另一个组,最终outputCRT将输出结果。