【问题标题】:How to use Java Methods/ Parameters如何使用 Java 方法/参数
【发布时间】:2021-12-24 00:10:03
【问题描述】:

我编写了一个程序,使用单独的部分来查找和显示矩形的面积和周长。我现在想创建一个空白来显示长度、宽度、面积和周长。但是,当我运行程序时,我似乎无法显示它。我会弹出我的代码,然后是下面的任务说明,以防我解释得不够清楚。

public class Rectangle
{
    public static void main(String[] args)
    {
        System.out.println (area(10,15));
        System.out.println (perimeter(10, 15));
    }
/**
* Returns the area of a rectangle
*/
    public static int area (int length, int width)
    {
        return length * width;
    }
/**
* Returns the perimeter of the rectangle
*/
    public static int perimeter (int length, int width)
    {
        return 2 * (length + width);
    }
    public static void printRectangleDetails(int length, int width, int area, int perimeter)
    {
        System.out.println ("The length of the rectangle is " + length);
        System.out.println ("The width of the rectangle is " + width);
        System.out.println ("The area of the rectangle is " + area);
        System.out.println ("The perimeter of the rectangle is " + perimeter);
    }
}

任务信息: “编写一个名为 printRectangleDetails 的方法,当给定矩形的高度和宽度时,它会打印四行输出,说明矩形的高度、宽度、面积和周长。输出应包括合适的文本,解释数字的范围。添加合适的cmets 到新方法。printRectangleDetails() 是一种不同于area 和 perimeter 的方法。它执行一些操作(打印输出)但在调用时不返回任何结果。因此它的输出类型必须为void 以表明它不返回一个值,它是一个 void 方法的示例。对 void 方法的调用可以用作程序中的独立语句。但是,因为 void 方法不返回值,所以它不能用于表达式需要一个值。返回值的方法(非 void 方法)既可以用作独立语句,也可以用作表达式。"

编辑 - 我现在已经在“用您的 printRectangleDetails() 方法的适当调用替换主方法中的代码”的说明中看到了这一点。这是否意味着我应该将 void main(String[] args) 部分更改为 printRectangleDetails() &如果是这样,我该怎么做?

【问题讨论】:

  • System.out.println ("The area of the rectangle is " + area(length, width));,周长也一样。
  • 提示:考虑与您的同龄人或导师进行此类讨论。 Stackoverflow 不能很好地替代此类学习活动。
  • 嗨@GhostCat,我只有一个同伴,他们也不知道。我们的导师要到下周才有空,所以我想我会在这里问

标签: java methods parameters


【解决方案1】:

可以在方法内部调用其他方法,您在printRectangleDetails 括号中传递int areaint perimeter 但是,您不必这样做。您的printRectangleDetails 方法应该只知道宽度和高度,在方法函数内部然后它会调用其他方法area(width, height)perimeter(width, height) 并将宽度和高度传递给它们。

对于编辑问题,您不必更改main(String[] args),但由于您的新方法printRectangleDetails 已经打印了矩形的所有信息,包括面积和周长,那么您所要做的就是替换任何方法在main 内部,只需调用printRectangleDetails

【讨论】:

  • 嗨!我完全理解这一点,你的回答帮助我理解了它,只是想知道你会怎么称呼它?
  • 也许我不能调用它,因为它也是公共静态无效的?我有点困惑,因为我想出了如何调用某些东西,但它会产生错误
  • 当您需要先打印内容时,您必须使用 System.out.println() 然后将方法放入其中,因为它们返回要打印的 int。但是对于printRectangleDetails,您不必这样做,它的 void 不会返回任何内容,并且在其中存在您想要的所有System.out.println,所以调用它很简单printRectangleDetails(width, height); 就是这样,所有的打印函数将在此方法中,它会自行打印。
  • 没关系,我刚刚修好了,你打电话的时候也要把数字放在括号里:)。
  • 错误是因为我在区域和周长之前留下了括号,当它们应该被删除时,哈哈,我真傻。非常感谢你的帮助!!
猜你喜欢
  • 2022-09-24
  • 2016-03-08
  • 2018-10-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-26
  • 2014-02-15
  • 1970-01-01
相关资源
最近更新 更多