Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
编写一个可以接受3个整数的小Java代码,并输出最小的一个_Java - Fatal编程技术网

编写一个可以接受3个整数的小Java代码,并输出最小的一个

编写一个可以接受3个整数的小Java代码,并输出最小的一个,java,Java,我刚开始学习Java,有一项任务给我带来了一些困难(我想这其实并不难) 说明如下: “在名为MathCalculations的类中,编写一个名为findMin的方法,该方法接受三个整数作为参数,并返回三个值中的最小值。例如,调用findMin(1,10,-1)将返回-1。您必须使用Math class min函数(仅接受两个参数)。在调用findMin的类中编写一个主方法。”(5、7、3)并打印返回的结果(格式见下文)。” 如提示所述,我必须使用Math.min函数,但它只需要两个参数。我编写了

我刚开始学习Java,有一项任务给我带来了一些困难(我想这其实并不难)

说明如下:

“在名为MathCalculations的类中,编写一个名为findMin的方法,该方法接受三个整数作为参数,并返回三个值中的最小值。例如,调用findMin(1,10,-1)将返回-1。您必须使用Math class min函数(仅接受两个参数)。在调用findMin的类中编写一个主方法。”(5、7、3)并打印返回的结果(格式见下文)。”

如提示所述,我必须使用Math.min函数,但它只需要两个参数。我编写了下面的代码,为我的作业提供了所需的输出,但我认为我没有以正确的方式完成。我很难理解“编写一个名为findMin的方法,该方法接受三个整数作为参数。”有人能给我一些帮助吗?提前谢谢

public class Test {
public static void main(String[] args) {
    findMin(3);
}       
public static int findMin(int min) {
    int minimum = Math.min(5, 7);
    int minimum2 = Math.min(minimum, 3);
        System.out.println("The minimum of 5, 7, and 3 is " + minimum2);
        return minimum2;
  }
}
提示:

接受3个(整数)参数的方法如下所示

public static int findMin(int p1, int p2, int p3) {
    ...
}

在这方面,您大约有99%,唯一的问题是
findMin
应该接受三个参数,而不是一个

findMin
应该更像

public static int findMin(int num1, int num2, int num3) {
然后,不要直接使用
5
7
3
,而是在此处使用
num1
num2
num3

然后您可以使用类似于

int min = findMin(5, 7, 3);
不要忘记分配方法调用的结果值;)


您可能会发现一些帮助

问题在于,您只允许用户指定一个参数,而要求为3,然后您自己硬编码另外两个参数

一个简单的解决方案可以是:

private static int findMin(int arg0, int arg1, int arg2) {
    int low = arg0;
    low = Math.min(low, arg1);
    low = Math.min(low, arg2);

    return low;
}
  • 将第一个参数指定给变量“low”
  • 继续将此变量与其他参数进行比较,并将其结果分配给
    low

您还可以将整数放入数组并对其排序。第一个元素将是最小的,第二个元素将是最小的

public static int findMin(int int1, int int2, int int3) {
    int[] nums={int1, int2, int3};
    Arrays.sort(nums);
    return nums[0];
}

或者只使用构图:

public static int findMin(int a, int b, int c) {
    return Math.min(Math.min(a, b), c);
}

“写一个名为findMin的方法,它接受三个整数作为参数”为什么你的方法只接受一个?你的老师想让你写一个名为
public int findMin(int a,int b,int c)
的方法,它返回a,b和c中最小的一个。@StephenC这是我第一次被告知-或者你的意思是因为这是”家庭作业?是的……显然。但我可能是在白费口舌,因为很多其他人给了他一个完整的解决方案…@StephenC除了“如何调用该方法”,不确定它提供的信息比你自己的答案多多少…但这是我的意见(无意冒犯)@StephenC“很多其他人给了他一个完整的解决方案。”“这正是我试图避免的,同时我也付出了足够的努力来引导他们前进。不过,我很欣赏你们的观点,我也同意,从长远来看,把代码扔到毫无预感的海报上对他们没什么帮助……非常感谢你们所有人。我意识到给我答案有点模糊,或者信息太多,但幸运的是,当我意识到如何给参数赋予3个值时,它就从那里开始了。非常感谢。