0
我對Java仍然比較陌生,並試圖實現最佳實踐。我有一堂課我想重蹈覆轍。我四處搜尋,找不到任何能解決我的問題的東西。使用枚舉來處理整型事件類型
我有一個名爲Definitions
的類,它將所有事件名稱映射到它們各自的事件ID。我有另一個課程來解析名爲EventHandler
的事件。 EventHandler
有一個switch語句,它已經變得非常大。我想減小處理程序方法的大小,以便代碼更易於閱讀。
我從下面截取了約50個其他事件。在每種情況下,大約有20-30行代碼。你可以想象這個switch語句有多大。
我Definitions
類:
public class Definitions
{
public static class EVENT
{
public static final int SEQUENCE_START = 10;
public static final int SEQUENCE_HALT = 11;
public static final int SEQUENCE_AUTHORIZED = 12;
}
}
我EventHandler
類:
public handledStack parse(IRPEventType buffer)
{
final int eventId = Integer.parseInt(buffer.reader().parse("EventID"));
switch (eventId)
{
case Definitions.EVENT.SEQUENCE_START:
{
// stuff happens here
break;
}
case Definitions.EVENT.SEQUENCE_HALT:
{
// stuff happens here
break;
}
case Definitions.EVENT.SEQUENCE_AUTHORIZED:
{
// stuff happens here
break;
}
}
}
不幸的是,EventId不會等於序號。有沒有辦法處理分散的事件ID值? – user0000001
我剛剛編輯了代碼,以便它能與事件ID一起使用。 –