1
請幫助我如何將這些值添加到字典?我想刪除整個switch語句並使用Dictionary來代替它來存儲值並將int值返回給方法。如何做呢?如何使用Dictionary在c#中的Method中存儲值?
private int ControlDecode(byte b)
{
int itype = -1;
int ipacekttype = b & 0x0F;
switch (ipacekttype)
{
case 0x01:
if ((b & 0xF0) == 0x10 || (b & 0xF0) == 0x20 || (b & 0xF0) == 0x50 || (b & 0xF0) == 0x60)
itype = 0x11;
break;
case 0x02:
if ((b & 0xF0) == 0x20 || (b & 0xF0) == 0x60 || (b & 0xF0) == 0x10 || (b & 0xF0) == 0x50)
itype = 0x12;
break;
case 0x03:
if ((b & 0xF0) == 0x00 || (b & 0xF0) == 0x10 || (b & 0xF0) == 0x20 || (b & 0xF0) == 0x40 || (b & 0xF0) == 0x50 || (b & 0xF0) == 0x56)
itype = 0x13;
break;
case 0x04:
if ((b & 0xF0) == 0x30 || (b & 0xF0) == 0x70)
itype = 0x14;
break;
case 0x05:
if ((b & 0xF0) == 0x00 || (b & 0xF0) == 0x10 || (b & 0xF0) == 0x20 || (b & 0xF0) == 0x40 || (b & 0xF0) == 0x50 || (b & 0xF0) == 0x56)
itype = 0x15;
break;
case 0x06:
if ((b & 0xF0) == 0x30 || (b & 0xF0) == 0x70)
itype = 0x16;
break;
case 0x08:
itype = 0x38;
break;
case 0x09:
itype = 0x39;
break;
case 0x0A:
itype = 0x3A;
break;
case 0x0B:
itype = 0x3B;
break;
case 0x0C:
itype = 0x3C;
break;
default:
break;
}
return itype;
}
太棒了!謝謝yu –
是的,有你指出的錯誤.. –