package enumtest;
public class Car {
enum Seasons{spring,summer,autumn,winter}
enum Furniture{chair("char1"),bed("bed2"),table("table3");
//从这开始,有点像个类了,给一个fianl变量配上getter方法和
//构造函数(传参的);这样通过构造函数就给enum的属性附上了值
//想得到这个值就用getter方法
private final String ss;//final很关键,不加fianl就不能用getSs()方法
public String getSs() {
return ss;
}
Furniture(String ss){this.ss=ss;}
}
//测试
public static void main(String[] args) {
//test1
for(Seasons ss:Seasons.values()){
System.out.println(ss);
}
System.out.println("----\\\\\\\\\\\\\\\\\\\\\\\\-----");
System.out.println(Seasons.values()[2]);
//Seasons.winter的类型是Seasons,要想把它的值付给别的类中得变量
//用toString()就可以变成String类型
String sv=Seasons.winter.toString();
System.out.println(Seasons.winter.toString());
System.out.println(Seasons.summer);
System.out.println("----\\\\\\\\\\\\\\\\\\\\\\\\-----");
//test2
for(Furniture ff:Furniture.values()){
System.out.println(ff+"--值是--"+ff.getSs());
}
System.out.println("--------------");
System.out.println(Furniture.bed);
System.out.println(Furniture.values()[2]);
String vv=Furniture.valueOf("table").toString();
System.out.println(Furniture.valueOf("table"));
}
//总之,enum可以有值,也可以没有;想用它给其他比昂两赋值时
//可以用toString()转化成String类型,也可以用上面的待构造函数的方法
/*
输出为
spring
summer
autumn
winter
----\\\\\\\\\\\\-----
autumn
winter
summer
----\\\\\\\\\\\\-----
chair--值是--char1
bed--值是--bed2
table--值是--table3
--------------
bed
table
table
*/
}