返回值

尽管带有void返回类型的方法并不少见,但太多数方法都会返回值.事实上,返回值是方法最有用的功能之一.你已经看到了一个返回值的示例:使用sqrt()函数来获得一个数的平方根.
在程序设计中,返回值可以用于不同的目的.在某些情况下,如sqrt(),返回值包含一些计算结果.在另一些情况下,返回值只用来指示成功或失败.还有一些情况,可能包含状态码.无论是何种目的,使用方法返回值都是Java程序设计的重要组成部分.
方法使用下面的retrun语句调用例程返回值:
retrun value;
这里,value是返回值.这种形式的return语句只能用在返回类型不为void的方法中.而且,非void方法必须使用这种形式的return语句返回值.
可以使用返回值来改进range()的实现方式.让range()计算并返回行驶里程比显示行驶里程更好.这种方法的优势是尅把返回值用于其他计算.下面的示例就不再让range()显示行驶里程,而是返回行驶里程:
package javaTest;
public class test
{
    // @param args
    public static void main(String args[])
    {
        Vehicle minivan = new Vehicle();
        Vehicle sportscar = new Vehicle();
        
        int range1,range2;
        
        minivan.passengers = 7;
        minivan.fuelcap = 16;
        minivan.mpg = 21;
        
        sportscar.passengers = 2;
        sportscar.fuelcap = 14;
        sportscar.mpg = 12;
        
        range1 = minivan.range();
        System.out.println("minivan can carry  "+minivan.passengers + " with range of  "+range1);
        
        range2 = sportscar.range();
        System.out.println("sportcar can carry  "+sportscar.passengers + " with range of  "+range2);
    }
}
class Vehicle
{
    int passengers;
    int fuelcap;
    int mpg;
    
    //display the range
    int range()
    {
        return fuelcap * mpg;
    }
}
输出:
minivan can carry 7 with range of 336
sportcar can carry 2 with range of 168
在程序中,注意当range()被调用时,是将他放在赋值语句的右边,而左边是一个接收range()返回值的变量.因此,在执行下列代码后,minivan对象的行驶里程就存储到了range1中:
range1 = minivan.range();
注意,range()有一个int类型的返回值,这就意味着要向调用者返回一个整数值.方法的返回类型之所以重要,是因为方法返回的数据类型必须与方法指定的返回类型兼容.因此,如果想让一个方法返回double类型的数据,那么该方法的返回类型也必须是double类型.