【发布时间】:2021-05-14 19:30:46
【问题描述】:
我需要编写一个程序,它使用多个称为 average 的方法返回这些值的平均值,如果两者都是 int,则返回的值应该是 int,如果一个或多个是浮点数,则值应该是作为双精度返回。我不断遇到以下代码错误:
class Main
{
class Unbruh{
static int average(int x, int y)
{
return ((x + y) / 2);
}
static double average(double x, double y)
{
return ((x + y) / 2);
}
}
class Bruh
{
public static void main (String[] args)
{
System.out.println ("Enter number");
Scanner input = new Scanner (System.in);
float x = input.nextFloat ();
float y = input.nextFloat ();
System.out.println(Unbruh.average(x,y));
System.out.println(Unbruh.average(x,y));
Unbruh a = new Unbruh ();
a.average (x, y);
// System.out.println (average (x, y));
}
}
}
这里的逻辑有问题,还是只是格式错误?
【问题讨论】:
-
只是格式化。将
Unbruh类移到包含 main 的类之外。看我的例子。Bruh应该公开。 -
“我不断遇到以下代码错误”什么错误?编译时间?运行时间?
-
Katzerax,如果这些答案中的任何一个有帮助,请考虑对其进行投票。此外,如果其中之一对您来说很突出并解决了您的问题,请将其标记为正确答案。您可能没有足够的声誉来投票。如果是这样,那很好。
标签: java floating-point integer