第一个枚举类-交通信号灯

时间:2021-10-16 18:33:17

一个很简单的枚举类:交通信号灯(红、绿、黄),带一个参数:持续时间。


代码如下:

package example;
//JHTP Exercise 8.10
//by pandenghuang@163.com
/**Write an enum type TrafficLight, whose constants (RED, GREEN, YELLOW) take one parameter—
the duration of the light. Write a program to test the TrafficLight enum so that it displays the
enum constants and their durations.
*/
import java.util.EnumSet;

enum TrafficLight{                             
   RED(20),                        
   GREEN(30),                           
   YELLOW(3);

   private int duration; 

   TrafficLight(int duration) 
   { 
      this.duration = duration;
   } 

   public int getDuration()
   {
      return duration;
   } 

}

public class TrafficLightTest 
{
   public static void main(String[] args) 
   {
      System.out.println("All Trafic Lights:");
                  
      for (TrafficLight tl : TrafficLight.values())                        
         System.out.printf("%-10s%d%n", tl,
             tl.getDuration());
   } 
} 


运行结果:

All Trafic Lights:
RED       20
GREEN     30
YELLOW    3