java - 在 Java 中返回一个值

标签 java methods types return if-statement

当方法内部有一个 if 语句根据结果返回不同的数据类型时,如何编写一个返回原始数据类型值的方法?

int minimum = 5;
int students = 4;
int studentGrades = 100;

public double getAverage(){
    if(students >= minimum){
        return studentGrades / students;
    }
    else {
        System.out.println(null, "Sorry, you don't have enough students.");
        return false;
    }
}

最佳答案

您实际上无法从同一方法返回两种不同的基本类型。对于引用类型,您可以返回Object,但这无论如何都不是一个好主意。

您的 return false 看起来像是一个错误条件,因此您可能会考虑在此处抛出异常:

public double getAverage(){
    if(students >= minimum){
        return studentGrades / students;
    }
    else {
       throw new IllegalStateException("not enough students");
    }
}

关于java - 在 Java 中返回一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5617851/

相关文章:

java - 接口(interface)实现

java - 缺少 addTo 方法

java - 在java中,我如何检查用于输入成绩的数组的输入验证(不能为负数,不能超过100)

java - 用最少的计算量寻找素数的算法

java - Android 如何保持方法运行?

c++ - 当我通过 const 引用传递 vector 时,为什么会出现此转换错误?

swift - 将不带参数的函数自身传递给函数(如 map/filter 等)不会调用函数,而是包装为没有参数的 block

java - ServerSocket(port) 和多线程对于 5000 个并发客户端点击是否能正常工作?

methods - 普通 lisp 中的匿名方法

string - TypeScript:将文字字符串类型定义转换为字符串值(如 typeof 运算符),或反之亦然?