黑马程序员技术交流社区

标题: 关于枚举的一个问题 [打印本页]

作者: 闫玉泉    时间: 2012-2-28 14:52
标题: 关于枚举的一个问题
有一下代码:public enum TrafficLight {  
    RED,GREEN,YELLOW;  
      
    public static TrafficLight getNextLight(TrafficLight currentLight){  
        switch(currentLight){  
        case RED:  
            return GREEN;  
        case GREEN:  
            return YELLOW;  
        case YELLOW:  
            return RED;  
        }  
        return null;  这是空 可是测试后有返回值 ,这个返回值是如何传递的?  求教!!!
   
    }  
}
作者: 闫玉泉    时间: 2012-2-28 14:54
本帖最后由 闫玉泉 于 2012-2-28 14:54 编辑

晕忽然明白了。。。。 这几个return是一个等级的,按顺序执行代码,当满足条件的时候就返回,如果不满足条件则返回空。
作者: 葛尧    时间: 2012-2-28 15:00
看程序前先搞懂执行流程
作者: liumeng    时间: 2012-2-28 15:56

public class TestEnum {
public static void main(String[] args) {
        System.out.println(getNextLight(TrafficLight.RED));
       
}
public static TrafficLight getNextLight(TrafficLight currentLight){  
    switch(currentLight){  
    case RED:  
            return currentLight.RED;
      
    case GREEN:  
        return currentLight.GREEN;  
    case YELLOW:  
        return currentLight.YELLOW;  
    }  
    return null;

}  
}
enum TrafficLight {  
    RED,GREEN,YELLOW;  
      
   
}




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2