Java enum 對枚舉元素的賦值和取值方式
更新時間:2024年05月16日 09:40:31 作者:AdamShyly
這篇文章主要介紹了Java enum 對枚舉元素的賦值和取值方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
Java enum對枚舉元素的賦值和取值
package edu.fjnu501.bankenum;
public enum Trade {
save("0"), withdraw("1");
private String type;
Trade(String s) {
type = s;
}
public String getType() {
return this.type;
}
}通過定義構(gòu)造方法和get方法即可對枚舉元素進行賦值和取值
if (Trade.withdraw.getType().equals("1")) {
// true
}動態(tài)賦值給枚舉enum
枚舉類 Level.java
public enum Level {
LOW("0", "level.LOW"),
MEDIUM("1", "level.MEDIUM"),
HIGH("2", "level.HIGH");
private String value;
private String description;
private Level(String value, String description) {
this.value = value;
this.description = description;
}
public String getValue() {
return this.value;
}
public String getDescription() {
return messageSource.getMessage(description, null, description, null);
}
//spring 框架的類
private MessageSource messageSource;
public Level setMessageSource(MessageSource messageSource) {
this.messageSource = messageSource;
return this;
}配置類
@Component
public class EnumValuesInjectionService {
@Autowired
private MessageSource messageSource;
//通過靜態(tài)內(nèi)部類的方式注入到bean,并 賦值到枚舉中。
@PostConstruct
public void postConstruct() {
for (Level level : EnumSet.allOf(Level.class)) {
level.setMessageSource(messageSource);
}
}
}在messages.properties中加入測試信息
level.LOW=低 level.MEDIUM=中 level.HIGH=高
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:
相關(guān)文章
Spring 事件監(jiān)聽機制實現(xiàn)跨模塊調(diào)用的思路詳解
之前一個項目,有兩個模塊,A 模塊需要依賴 B 模塊,但現(xiàn)在 B 模塊有地方需要調(diào)用 A 模塊的方法,如果直接依賴,又會產(chǎn)生循環(huán)依賴問題,最終選擇使用 spring 的事件監(jiān)聽來解決該問題,下面給大家介紹Spring 事件監(jiān)聽機制實現(xiàn)跨模塊調(diào)用的思路,感興趣的朋友一起看看吧2024-05-05
SpringBoot整合RabbitMQ的5種模式的注解綁定詳解
這篇文章主要介紹了SpringBoot整合RabbitMQ的5種模式的注解綁定詳解,RabbitMQ 是一個消息中間件,它接收消息并且轉(zhuǎn)發(fā),是"消費-生產(chǎn)者模型"的一個典型的代表,一端往消息隊列中不斷的寫入消息,而另一端則可以讀取或者訂閱隊列中的消息,需要的朋友可以參考下2024-01-01
Java使用EasyExcel實現(xiàn)百萬數(shù)據(jù)導(dǎo)出的最佳實踐指南
這篇文章主要為大家詳細(xì)介紹了Java如何使用EasyExcel實現(xiàn)百萬數(shù)據(jù)導(dǎo)出功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起了解下2026-01-01
struts2簡介_動力節(jié)點Java學(xué)院整理
Struts2框架是MVC流程框架,適合分層開發(fā),這篇文章主要為大家詳細(xì)介紹了struts2簡介的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-09-09
詳解java中finalize的實現(xiàn)與相應(yīng)的執(zhí)行過程
在常規(guī)的java書籍中,即會描述 object的finalize方法是用于一些特殊的對象在回收之前再做一些掃尾的工作,但是并沒有說明此是如何實現(xiàn)的.本篇從java的角度(不涉及jvm以及c++),有需要的朋友們可以參考借鑒。2016-09-09
SpringBoot項目啟動打包報錯類文件具有錯誤的版本 61.0, 應(yīng)為 52.0的解決
這篇文章主要給大家介紹了關(guān)于SpringBoot項目啟動打包報錯類文件具有錯誤的版本 61.0, 應(yīng)為 52.0的解決方法,文中有詳細(xì)的排查過程和解決方法,通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-11-11
IDEA無法打開Marketplace的三種解決方案(推薦)
這篇文章主要介紹了IDEA無法打開Marketplace的三種解決方案(推薦),本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-11-11

