最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java枚舉的七種常見用法總結(jié)(必看)

 更新時間:2016年11月06日 18:57:57   投稿:jingxian  
下面小編就為大家?guī)硪黄狫ava枚舉的七種常見用法總結(jié)(必看)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

用法一:常量

在JDK1.5之前,我們定義常量都是:publicstaticfianl....?,F(xiàn)在好了,有了枚舉,可以把相關(guān)的常量分組到一個枚舉類型里,而且枚舉提供了比常量更多的方法。

Java代碼

public enum Color {

RED, GREEN, BLANK, YELLOW

}

用法二:switch

JDK1.6之前的switch語句只支持int,char,enum類型,使用枚舉,能讓我們的代碼可讀性更強。

Java代碼

enum Signal {

GREEN, YELLOW, RED

}

public class TrafficLight {

Signal color = Signal.RED;

public void change() {

switch (color) {

case RED:

color = Signal.GREEN;

break;

case YELLOW:

color = Signal.RED;

break;

case GREEN:

color = Signal.YELLOW;

break;

}

}

}

用法三:向枚舉中添加新方法

如果打算自定義自己的方法,那么必須在enum實例序列的最后添加一個分號。而且Java要求必須先定義enum實例。

Java代碼

public enum Color {

RED("紅色", 1), GREEN("綠色", 2), BLANK("白色", 3), YELLO("黃色", 4);

// 成員變量

private String name;

private int index;

// 構(gòu)造方法

private Color(String name, int index) {

this.name = name;

this.index = index;

}

// 普通方法

public static String getName(int index) {

for (Color c : Color.values()) {

if (c.getIndex() == index) {

return c.name;

}

}

return null;

}

// get set 方法

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public int getIndex() {

return index;

}

public void setIndex(int index) {

this.index = index;

}

}

用法四:覆蓋枚舉的方法

下面給出一個toString()方法覆蓋的例子。

Java代碼

public enum Color {

RED("紅色", 1), GREEN("綠色", 2), BLANK("白色", 3), YELLO("黃色", 4);

// 成員變量

private String name;

private int index;

// 構(gòu)造方法

private Color(String name, int index) {

this.name = name;

this.index = index;

}

//覆蓋方法

@Override

public String toString() {

return this.index+"_"+this.name;

}

}

用法五:實現(xiàn)接口

所有的枚舉都繼承自java.lang.Enum類。由于Java不支持多繼承,所以枚舉對象不能再繼承其他類。

Java代碼

public interface Behaviour {

void print();

String getInfo();

}

public enum Color implements Behaviour{

RED("紅色", 1), GREEN("綠色", 2), BLANK("白色", 3), YELLO("黃色", 4);

// 成員變量

private String name;

private int index;

// 構(gòu)造方法

private Color(String name, int index) {

this.name = name;

this.index = index;

}

//接口方法

@Override

public String getInfo() {

return this.name;

}

//接口方法

@Override

public void print() {

System.out.println(this.index+":"+this.name);

}

}

用法六:使用接口組織枚舉

Java代碼

public interface Food {

enum Coffee implements Food{

BLACK_COFFEE,DECAF_COFFEE,LATTE,CAPPUCCINO

}

enum Dessert implements Food{

FRUIT, CAKE, GELATO

}

}

用法七:關(guān)于枚舉集合的使用

java.util.EnumSet和java.util.EnumMap是兩個枚舉集合。EnumSet保證集合中的元素不重復;EnumMap中的key是enum類型,而value則可以是任意類型。關(guān)于這個兩個集合的使用就不在這里贅述,可以參考JDK文檔。

以上就是小編為大家?guī)淼腏ava枚舉的七種常見用法總結(jié)(必看)全部內(nèi)容了,希望大家多多支持腳本之家~

相關(guān)文章

  • SpringMVC中的@RequestMapping注解解析

    SpringMVC中的@RequestMapping注解解析

    這篇文章主要介紹了SpringMVC中的@RequestMapping注解解析,SpringMVC使用@RequestMapping注解為控制器指定可以處理哪些?URL?請求,在控制器的類定義及方法定義處都可標注@RequestMapping,需要的朋友可以參考下
    2023-12-12
  • Java內(nèi)部類和異常類的概念以及使用

    Java內(nèi)部類和異常類的概念以及使用

    這篇文章主要介紹了Java內(nèi)部類和異常類的概念以及使用,文中有非常詳細的代碼以及注釋,適合正在學習java基礎(chǔ)的同學們使用,需要的朋友可以參考下
    2021-04-04
  • log4j升級log4j2遇到的問題及解決方式

    log4j升級log4j2遇到的問題及解決方式

    這篇文章主要介紹了log4j升級log4j2遇到的問題及解決方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • SpringBoot整合SpringSecurityOauth2實現(xiàn)鑒權(quán)動態(tài)權(quán)限問題

    SpringBoot整合SpringSecurityOauth2實現(xiàn)鑒權(quán)動態(tài)權(quán)限問題

    這篇文章主要介紹了SpringBoot整合SpringSecurityOauth2實現(xiàn)鑒權(quán)-動態(tài)權(quán)限,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-06-06
  • 帶你入門Java的方法

    帶你入門Java的方法

    這篇文章主要介紹了java基礎(chǔ)之方法詳解,文中有非常詳細的代碼示例,對正在學習java基礎(chǔ)的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-07-07
  • Java中使用Jedis操作Redis的示例代碼

    Java中使用Jedis操作Redis的示例代碼

    本篇文章主要介紹了Java中使用Jedis操作Redis的示例代碼,具有一定的參考價值,有興趣的可以了解一下。
    2016-12-12
  • Spring中的模塊與應(yīng)用場景詳解

    Spring中的模塊與應(yīng)用場景詳解

    這篇文章主要介紹了Spring中的模塊與應(yīng)用場景詳解,Spring 框架可以為 Java 應(yīng)用程序開發(fā)提供全面的基礎(chǔ)設(shè)施支持,它是現(xiàn)在非常流行的 Java 開源框架,對于一個 Java 開發(fā)人員來說,熟練掌握 Spring 是必不可少的,需要的朋友可以參考下
    2023-09-09
  • 基于Spring Mvc實現(xiàn)的Excel文件上傳下載示例

    基于Spring Mvc實現(xiàn)的Excel文件上傳下載示例

    本篇文章主要介紹了基于Spring Mvc實現(xiàn)的Excel文件上傳下載示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • Java中遞歸、循環(huán)的優(yōu)劣分析

    Java中遞歸、循環(huán)的優(yōu)劣分析

    這篇文章主要給大家介紹了關(guān)于Java中遞歸、循環(huán)的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者使用Java具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-03-03
  • Javafx利用fxml變換場景的實現(xiàn)示例

    Javafx利用fxml變換場景的實現(xiàn)示例

    本文主要介紹了Javafx利用fxml變換場景的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-07-07

最新評論

尚志市| 兴隆县| 嘉义市| 正蓝旗| 保康县| 金溪县| 宁都县| 天镇县| 深圳市| 萨嘎县| 建始县| 图木舒克市| 乐昌市| 隆化县| 阳城县| 宁南县| 平南县| 呼伦贝尔市| 高密市| 清流县| 肃宁县| 遂昌县| 赤峰市| 中牟县| 瓦房店市| 新沂市| 美姑县| 常宁市| 喜德县| 青岛市| 镇沅| 明水县| 云梦县| 交口县| 泸水县| 遂昌县| 张掖市| 安康市| 甘泉县| 金阳县| 五河县|