枚举在单独的课堂上

dsj*_*oka 3 java enums

无论如何将这个测试放在一个单独的课程中?我试过但没有成功.

public class TrafficLightprj 
{
    public enum TrafficLight 
    {  
        RED(1),  
        GREEN(2),  
        YELLOW(3);

        private final int duration; 

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

        public int getDuration() { 
            return this.duration; 
        } 


        public static void main(String[] args) 
        {
            for(TrafficLight light: TrafficLight.values())
            {
               System.out.println("The traffic light value is: " +light);
               System.out.println("The duration of that trafic light value is: " + light.getDuration());
            }
        }   
    }
}
Run Code Online (Sandbox Code Playgroud)

Jas*_*Cav 13

我不确定我理解你在问题中的意思,所以我会回答我的想法.

枚举可以是Java中自己的文件.例如,你可以有一个名为TrafficLight的文件,里面是:

public enum TrafficLight {  
    RED(1),  
    GREEN(2),  
    YELLOW(3);

    private final int duration; 

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

    public int getDuration() { 
        return this.duration; 
    } 
}
Run Code Online (Sandbox Code Playgroud)

然后,您可以在测试项目(TrafficLightPrj.java)中使用此枚举.像这样:

public class TrafficLightprj {

    public static void main(String[] args) {
        for(TrafficLight light: TrafficLight.values()) {
            System.out.println("The traffic light value is: " +light);
            System.out.println("The duration of that trafic light value is: " +light.getDuration());
        }
    }
}
Run Code Online (Sandbox Code Playgroud)


ada*_*shr 2

您需要将其本身放入不同的 .java 文件中。在一个 .java 文件中不能有多个公共类/枚举。

TrafficLightprj.java

public class TrafficLightprj {

    public static void main(String[] args) {
        for(TrafficLight light: TrafficLight.values()){
            System.out.println("The traffic light value is: " +light);
            System.out.println("The duration of that trafic light value is: "  +light.getDuration());
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

交通灯.java

public enum TrafficLight {  
    RED(1),  
    GREEN(2),  
    YELLOW(3);

    private final int duration; 

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

    public int getDuration() { 
        return this.duration; 
    }
} 
Run Code Online (Sandbox Code Playgroud)