Bas*_*saa 6 java sockets enums asynchronous tcp
通过套接字发送枚举值的最佳方法是什么?有没有办法将枚举值转换为int,反之亦然?喜欢:
Enum values {
value1,
value2
}
int value = (int)value1;
And...
values value2 = (value) value;
Run Code Online (Sandbox Code Playgroud)
通过互联网发送这个会很高兴!谢谢大家!
巴斯
无论是要么int:
int ordinal = values.value1.ordinal()
//unmarshalling
values.values[ordinal];
Run Code Online (Sandbox Code Playgroud)
或者String:
String name = values.value1.name();
//unmarshalling
values.valueOf(name);
Run Code Online (Sandbox Code Playgroud)
前者节省了一些空间(32位而不是变长字符串)但更难维护,例如重新排列enum值会破坏ordinal()向后兼容性.另一方面ordinal()允许您重命名enum值...