【问题标题】:(Java) How would I recognize user input from main into a different method?(Java)我如何识别用户从 main 到不同方法的输入?
【发布时间】:2022-11-16 06:47:41
【问题描述】:

我正在尝试完成一项作业,而我的教授只希望 inout 和 output 处于主要状态。但是,当我尝试识别从 main 到另一种方法的用户输入以继续该问题时,它不会识别它,我无法弄清楚如何继续。我目前正在学习 Java,掌握方法真的很复杂,感谢我能得到的任何帮助。我已经编写了代码,但是所有输入都在其他方法中,只是在 main 中打印方法,但这不是正确的方法。

任务: isEquilateral -- 接受代表三角形边的 3 个整数。返回真如果 三角形有 3 个等长边,否则为假。

  1. isIscosceles——接受代表三角形边的 3 个整数。返回真如果 三角形是等腰的,否则是假的。

  2. perimeter - 接受代表三角形边的 3 个整数并返回 三角形的周长。

  3. area -- 接受 3 个整数,代表三角形的边并计算和 返回三角形的面积。提示:使用 Heron 的公式。你必须打电话给周边 来自这个方法的方法。

  4. maxSide——接受 3 个整数,代表三角形的边。返回 最大边。

  5. main方法应该读入一个三角形的三边,打印三角形是否为 等边或等腰,然后打印最大边、周长和面积 三角形。 注意:所有输入和输出仅在 main 中完成。任何方法都不应读取或打印。

The code I have for main and User input in method isEquilateral

【问题讨论】:

标签: java


【解决方案1】:

您的主目录中已经有一个扫描仪 (keyboard)。在调用方法之前读取输入

public static void main(String args[]) {
   Scanner keyboard = new Scanner();
   // request input System.out.print etc
   int one = keyboard.nextInt();
   // same for 2
   // modify your method to receive parameters
   isEquilateral(one, two);
   ....
}

然后你需要修改你的方法来接收参数......

public static void isEquilateral(int one, int two) {
    ...
}

最后,不是在方法内部打印,而是让它们返回一个值,并按要求在 main 中打印:

public static String isEquilateral(int one, int two) {
    ...
    if (...) {
      return "You have two sides that match ... etc  etc"; 
    }

}

并在 main 中打印

...
String result = isEquilateral(one, two);
System.out.println(result);

我希望这有帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-06-15
    • 1970-01-01
    • 2013-12-05
    • 1970-01-01
    • 2017-12-23
    • 2013-11-28
    • 2014-06-09
    • 1970-01-01
    相关资源
    最近更新 更多