c语言sscanf函数的用法是什么
316
2023-04-11
Java Enum和String及int的相互转化示例
一、定义性别枚举
枚举(enum),是指一个经过排序的、被打包成一个单一实体的项列表。使用枚举增加程序可读性、降低耦合性。
/**
* 性别枚举
*/
public enum Gender {
male("男"),female("女");
private String name;
private Gender(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
二、枚举的基本方法
对于male枚举常量:
public class MyMain {
public static void main(String[] args) {
Gender gender = Gender.male;
System.out.println(genderhttp://.toString()); //Gender.male枚举常量的名称
System.out.println(gender.getName());//Gender.male的name值
System.out.println(gender.ordinal());//Gender.male枚举常量的序数
}
}
结果:
三、Enum与String的转化
String maleString = Gender.male.toString(); //Gender转化为String
Gender maleGender = Gender.valueOf("male"); //String转化为Gender,male对应Gender枚举的常量名称
四、Enum与int的转化
int maleInt = Gender.male.ordinal();
//Enum转化为int,返回枚举常量的序数
java Enum指定值的应用(从数据转换为Enum)
enum ACTION{
ac_Entry(10),ac_View(2),ac_Approve(5);
private int _val;
private static final Map
static{
for (ACTION item:ACTION.values()){
keyMap.put(item._val,item);
}
}
public int getVal(){
return _val;
}
ACTION(int val){
_val=val;
}
public static ACTION fromVal(int pvnVal){
return keyMap.get(pvnVal);
}
}
@Test
public void testEnum(){
ACTION e=ACTION.ac_View;
System.out.println(e+","+e.ordinal()+","+e.getVal());
e=ACTION.fromVal(5);
System.out.println(e+","+e.ordinal()+","+e.getVal());
}
原理,就是用一个map来进行value->enum的转换.
ac_View,1,2
ac_Approve,2,5
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~