c# 枚举转java枚举案例

前言:我们项目需要从c#语言转换为java语言,下面我们需要讨论的是怎么把C#枚举转换成java枚举。
将C#语言转成java语言?你可能会说,嘿,这不是轻而易举的是么?
事实证明这不是。
c#中的枚举可以自我进行位运算,而java的枚举不可以。也许你又会说,嘿,这不也简单么?java获取到具体的枚举值再进行位运算不就可以了么?
不行!
举个栗子:
现有枚举
//C#代码

 
public enum Permission {
None(“None”0),
Eidit(“Edite”,1<<1),
Print(“Print”1<<2),
Read(“Read”,1<<3),
Copy(“Copy”1<<4),;
}
如果转成java代码就是下面这个样子
java代码
 
//引包略
//Java 代码
public enum Permission {
None(“None”0),
Eidit(“Edite”,1<<1),
Print(“Print”1<<2),
Read(“Read”,1<<3),
Copy(“Copy”1<<4),;
private String name;
private int value;
Permission(String name,int value){
this.name = name
this.value=value;
}
public String getName(){
return this.name
}
public int getValue(){
return this.value;//End
}
//根据枚举value值获取枚举
public static Permission getPermissionFromValue(int Value){
Permission[] permissions = Permission.values();
for (int i = 0; permissions.length();i++){
if(value==permissions[i]){
return permissions[i]
}
return null;
}
}
}

好了,现在我们需要做位运算,需要将Read权限跟Copy权限并

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值