//小轿车类
public class Car {
private String brand;//品牌
private MyColor color = MyColor.BLACK;//颜色
Car()
{
System.out.println("一辆小轿车诞生了...");
}
Car(String brand,MyColor color)
{
this.brand =brand;
this.color = color;
}
public String toString()
{
return "品牌:"+this.brand+",颜色:"+this.color;
}
}
//颜色的枚举类型
public enum MyColor {
//直接定义枚举类型常来,一般都是大写字母,常量之间使用逗号分隔
RED("红色"),GREEN("绿色"),BLUE("蓝色"),WHITE("白色"),BLACK("黑色");
private String name;//属性
MyColor()
{
System.out.println("诞生了一种颜色...");
}
MyColor(String name)
{
this.name = name;
}
public String getName()
{
return this.name;
}
}
public class Test {
private static Car c=new Car();
private static Scanner in = new Scanner(System.in);
//给车选颜色
public static void choiceCarColor()
{
int choice;
MyColor car_color;
MyColor[] colors = MyColor.values(); //获得枚举的元素数组
System.out.println("请选择您喜欢的颜色:");
int iCount=0;
for(MyColor c :colors)
{
System.out.println((iCount++)+":"+c.getName());
}
System.out.println("请选择:");
choice = in.nextInt();
car_color = colors[choice];
switch(car_color)
{
case RED:
MyColor c = MyColor.RED;
System.out.println(c.ordinal()); //打印枚举常量的编号
System.out.println(c.getName());
System.out.println("红色表示热情似火..");
break;
case GREEN:
System.out.println("绿色表示青春活力...");
break;
case BLUE:
System.out.println("蓝色表示浪漫...");
break;
case WHITE:
System.out.println("白色表示纯洁...");
break;
case BLACK:
System.out.println("黑色表示高贵...");
break;
}
}
public static void main(String[] args) {
Test.choiceCarColor();
}
}