2010-08-21 37 views
0

我有一個枚舉類,並從一些成員中提取「id」值並將它們存儲在Int變量中。這是否是個好主意不是問題。枚舉ID,匹配操作中不允許使用?

的問題是什麼,這就是爲什麼我似乎無法做到以下幾點:

比方說,我有S:詮釋持有這些ID值中的一個......我想這樣做與實際匹配枚舉值。像下面這樣:

的比賽{ QID.MEM_RD.id => //東西

QID.MEM_WRT.id => //別的 }

這似乎給我一個失敗,「需要穩定的標識符」。所以我最終喜歡

編寫代碼,如果(S == QID.MEM_RD.id) //東西 否則,如果(S == QID.MEM_WRT.ID) //別的

左右。對我來說,這對我來說很奇怪,斯卡拉擁有這個不錯的功能,但似乎迫使我回到一種醜陋的編碼風格---當我寧願使用他們的匹配功能。

任何想法?我想我可以重組以停止提取id ...但是這只是匹配的想法,不允許這讓我感到有些不適。

(注:我不嘗試存儲的ID值的任何地方持續...只是使用他們的程序執行期間)

-Jay

回答