問題背景:我們假設這樣一種需求,需要在程序運行中,根據不同的網絡請求錯誤顯示不同的錯誤碼(errorCode),有的時候還要把錯誤信息(errorMsg)記入日志。那么認為errorCode和errorMsg存在一對一的映射,所以自然想到利用一個枚舉類型表示:publicclassenum{A("1001","errorMsg1"),B("1002","errorMsg2"),C("1003","errorMsg3"),D("1004","errorMsg4"),...;//屬性聲明(都是字符串)publicStringerrorCode;publicStringerrorMsg;//構造方法略}我的問題:枚舉的開銷是比較大的,現在程序需要最大限度節省手機內存還要保證代碼的優雅。但是我并不知道對于String保存類型的數據,用不用枚舉的差別是否很大?(我的枚舉大約會有20項)。如果真的要避免使用枚舉,那么如何在保證代碼優雅的基礎上實現這種需求(期望程序員只需要在某種錯誤情況下把代表錯誤的枚舉變量保存起來,而不需要關心內部errorCode和errorMsg的映射關系)
Android中這種情況下是否應該使用枚舉
躍然一笑
2019-04-10 20:48:40
