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

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

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

用法一:常量

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

Java代碼

public enum Color {

RED, GREEN, BLANK, YELLOW

}

用法二:switch

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

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實(shí)例序列的最后添加一個(gè)分號(hào)。而且Java要求必須先定義enum實(shí)例。

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;

}

}

用法四:覆蓋枚舉的方法

下面給出一個(gè)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;

}

}

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

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

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是兩個(gè)枚舉集合。EnumSet保證集合中的元素不重復(fù);EnumMap中的key是enum類型,而value則可以是任意類型。關(guān)于這個(gè)兩個(gè)集合的使用就不在這里贅述,可以參考JDK文檔。

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

相關(guān)文章

  • SpringMVC中的@RequestMapping注解解析

    SpringMVC中的@RequestMapping注解解析

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

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

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

    log4j升級(jí)log4j2遇到的問題及解決方式

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

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

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

    帶你入門Java的方法

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

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

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

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

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

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

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

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

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

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

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

最新評(píng)論

青川县| 许昌县| 淮滨县| 遵义市| 靖安县| 女性| 龙南县| 金平| 武强县| 宜兴市| 武定县| 南开区| 客服| 页游| 屏边| 文山县| 星子县| 呼玛县| 新民市| 昌平区| 文化| 抚顺市| 长阳| 丽江市| 汝城县| 蕲春县| 墨江| 岳普湖县| 丰都县| 阿合奇县| 荃湾区| 鄂托克旗| 松阳县| 探索| 邹城市| 若羌县| 巨野县| 屏边| 阿荣旗| 呼伦贝尔市| 徐州市|