1. 无返回值
在成员方法一小节中,我们提到过void
标识表示无返回值,即我们并不需要声明return <some>
语句。当然,我们也可以使用return;
来表示不返回任何东西,当然我们并不建议采用这样的方式,多次一举,因为return;
这一语句在run
方法中永远不会被执行。
public class Car {
String brand;
String color;
public void run() {
System.out.println(color + "-" + brand + " is running!");
return;
}
public static void main(String[] args) {
Car benz = new Car();
benz.brand = "Benz";
benz.color = "Red";
benz.run();
}
}
2. 有返回值
前面介绍的成员方法是没有返回值的情况,接下来我们学习一下如何定义有返回值的成员方法。还是之前的例子,不过这次车辆启动之后,需要有信号告知我们车辆是正常启动还是发生了故障。
import java.lang.Math;
public class Car {
String brand;
String color;
public boolean start() {
double p = Math.random();
return p > 0.5;
}
public static void main(String[] args) {
Car benz = new Car();
benz.brand = "Benz";
benz.color = "Red";
boolean flag = benz.start();
if (flag) {
System.out.println("The car has started!");
} else {
System.out.println("The car has been broken!");
}
}
}
当然,对于上面高亮的代码行,我们采用if-else
结构也是可以的:
if (p > 0.5) {
return true;
} else {
return false;
}
这里我们通过return
来返回对应的值,需要注意的是,所返回的值数据类型必须和成员方法定义的返回值类型一致。