一、枚举的一般用法
1、定义常量
`public enum Constants{Constants_A, constans_B,Constans_C}`
2、还可以用接口定义常量
interface Constants2
{
public static final int Constants_A = 1;
public static final int Constants_B = 12;
}
二、JAVA中的用法
1、操作枚举类型的方法
1)values():返回枚举值的数组
public class Address
{
public enum Constants{Constants_A, Constants_B, Constants_C};
public static void main(String[] args)
{
for(int i = 0; i < Constants.values().length; i++)
{
System.out.println(Constants.values()[i]);
}
}
}
2)valueOf():把字符串转换成枚Constants.valueOf("Constants_A");
不能转换constances中不存在的枚举。
3)compareTo():比较两个枚举对象在定义时的顺序
System.out.println(Constants.Constants_A.compareTo(Constants.Constants_C));
值是定义的顺序的差值,比如上句代码结果为:-2
4)ordinal():获取枚举对象的位置索引值
System.out.println(Constants.Constants_A.ordinal());//结果输出0
2.枚举中使用构造方法
1)这种使用好神奇哟 0 0
2)
public class Address
{
public enum Constants
{
Constants_A("A"),
Constants_B("B"),
Constants_C("C");
private String e_ID;
private Constants(String id)
{
e_ID = id;
}
private String getID()
{
return this.e_ID;
}
};
public static void main(String[] args)
{
System.out.println(Constants.Constants_A.getID());//输出A
}
}
3)枚举实现接口
interface Description
{
String getDescription();
}
public class Address
{
public enum Constants implements Description
{
Constants_A("A"),
Constants_B("B"),
Constants_C("C");
private String e_ID;
private Constants(String id)
{
e_ID = id;
}
public String getDescription() //实现接口
{
return this.e_ID;
}
};
public static void main(String[] args)
{
System.out.println(Constants.Constants_A.getDescription());//输出A
}
}
PS:感觉就是把枚举当类在用啊,而且还是静态类,是这样么? 0 0