我在c语言中这样定义的:
typedef enum
{
ptGetImage = 1,
ptRespond = 2,
ptStartMonitor = 3,
ptStopMonitor = 4,
ptSetParameters = 5,
ptGetParameters = 6,
ptSearchSensor = 7,
ptEdgeChkData = 8
} CNetCmd;
我按照上面在安卓中这样定义的:
private enum CNetCmd{
ptGetImage(1) ,
ptRespond(2),
ptStartMonitor(3),
ptStopMonitor(4),
ptSetParameters(5),
ptGetParameters(6),
ptSearchSensor(7),
ptEdgeChkData(8);
private int code;
private CNetCmd(int code){
this.code =code;
}
public int getCode(){
return code;
}
}
因为我要发送我枚举的内容:
buf = CNetCmd(ptSearchSensor(7).getText().toString());
为什么这样不行呢?大神们帮忙看一下把!!!
buf = CNetCmd(ptSearchSensor.getCode())
但是CNetCmd(ptSearchSensor.getCode())是整型,buf是byte[]数组。我用的DatagramPacket,我试过好像不可以强转,要怎么做呢?谢谢啦!!!
private enum CNetCmd{
ptGetImage(1) ,
ptRespond(2),
ptStartMonitor(3),
ptStopMonitor(4),
ptSetParameters(5),
ptGetParameters(6),
ptSearchSensor(7),
ptEdgeChkData(8);
private byte[] code;
private CNetCmd(byte[] code){
this.code =code;
}
public byte[] toByteArray() {
return code;
}
}