编写静态值返回方法

时间:2014-02-21 19:37:16

标签: java methods static

我的任务是:写一个名为max的静态值返回方法,它有两个int参数num1和num2,并返回两个整数中较大的一个。

到目前为止,我已经写了主要部分,只需要正确的方法帮助

import java.io.*;
import java.util.Scanner;

public class MaxLab {

    public static void main(String[] args) throws IOException {
        String inputLine;
        int number1;
        int number2;
        Scanner in;
        in = new Scanner(System.in);
        System.out.print("Enter first number:");
        number1 = in.nextInt();
        System.out.print("Enter second number:");
        number2 = in.nextInt();
        System.out.println("The largest number is " + max(number1, number2));
    }
 }

5 个答案:

答案 0 :(得分:1)

public static int max(int num1, int num2) {
  return Math.max(num1, num2);
}

上述可能会被视为练习目的的捷径。在这种情况下,这是扩展形式:

public static int max(int num1, int num2) {
  return num1 > num2 ? num1 : num2;
}

答案 1 :(得分:0)

这是一个基本的静态方法:

public static int max(int num1, int num2) {
    if(num1 > num2) return num1;
    else return num2;
}

这应该有效。

答案 2 :(得分:0)

public class stackoverflow {

    public static void main(String[] args) {
        System.out.println(max(10, 20));//replace the arguments with users input
    }
    public static int max(int num1, int num2){
        int biggest = Math.max(num1, num2);
        return biggest;
    }
}

答案 3 :(得分:0)

到目前为止,我已经看过了

if(num1 > num2) return num1;
if(num1 < num2) return num2;
return num1;

return num1 > num2 ? num1 : num2;

我不会选择第一个,使用else编写它的简短方法是:

if(num1 > num2) {
    return num1;
} else {
    return num2;
}

第二种方式称为三元运算符。它的语法是

[boolean expression] ? [returns this if true] : [returns this if false];

正如你所看到的,它基本上与我上面写的相同,实际上它编译成同样的东西。但是,如果你从未见过它,那可能会令人困惑。

答案 4 :(得分:-3)

System.out.println("The largest number is " + Math.max(number1,number2));