return

    在java中有多个关键词表示无条件分支,他们只是表示这个分支无需任何测试即可发生,这些关键词包括,return,break,continue和一种与其他语言中的goto类似的跳转到标号语句的方式。

   return关键词有两方面的用途:一方面指定一个方法返回什么值(假设它没有void返回值),另一方面它会导致当前的方法退出,并返回那个值。可据此改写上面的test()方法,使其利用这些特点:

public class IfElse2 {
    static int test(int  testval,int target){
        if(testval>target){
            return +1;
        }else if (testval<target){
            return -1;
        }else {return 0;}
    }

    public static void main(String[] args) {
        System.out.println(test(3,2));       // 1
        System.out.println(test(2,2));       //  0
        System.out.println(test(1,2));       //-1
    }
}

    不必加上else,因为方法在执行了return后不再继续执行。

    如果在返回void的方法中没有return语句,那么在该方法的结尾处会有一个隐式的return,因此在方法中并非总是必须要有一个return语句。但是,如果一个方法声明它将返回void之外的其他东西,那么必须确保每一条代码路径都将返回一个值。

    练习6:修改前两个程序中的两个test()方法,让他们接受两个额外的参数begin和end,这样在测试testval是将判断他是否在begin和end之间(包括begin和end)的范围内。