通过套接字发送枚举值的最佳方法是什么?有没有办法将枚举值转换为int,反之亦然? 像:
Enum values {
value1,
value2
}
int value = (int)value1;
And...
values value2 = (value) value;
通过互联网发送此信息会非常好! 谢谢大家!
BAS
答案 0 :(得分:6)
要么对int
进行编组:
int ordinal = values.value1.ordinal()
//unmarshalling
values.values[ordinal];
或String
:
String name = values.value1.name();
//unmarshalling
values.valueOf(name);
前者节省了一些空间(32位而不是变长字符串)但是更难维护,例如重新排列enum
值会导致ordinal()
向后兼容性中断。另一方面,ordinal()
允许您重命名enum
值...