千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

手機站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時隨地免費學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時隨地免費學(xué)習(xí)課程

當(dāng)前位置:首頁  >  技術(shù)干貨  > java枚舉用法示例:java中for的用法示例

java枚舉用法示例:java中for的用法示例

來源:千鋒教育
發(fā)布人:xqq
時間: 2023-07-23 13:54:13 1690091653

在Java中,枚舉是一種特殊的數(shù)據(jù)類型,可以用來定義一組有限的值。Java枚舉可以讓代碼更加清晰、簡潔,避免使用數(shù)字和字符串字面量的不便之處。在Java SE 5之后,枚舉成為了語言本身的一個核心特性。

Java枚舉使用關(guān)鍵字enum來定義,語法如下:

enum Name {    VALUE1,    VALUE2,    VALUE3,    ...}

其中,Name表示枚舉名,VALUE1、VALUE2等表示枚舉項。每個枚舉項都是一個常量,可以被調(diào)用,例如Name.VALUE1。

Java枚舉用法示例

Java枚舉可以用來替代常量類,例如:

public class TimeConstants {    public static final int MINUTE = 60;    public static final int HOUR = MINUTE * 60;    public static final int DAY = HOUR * 24;}

使用Java枚舉,可以這樣定義:

public enum TimeConstants {    MINUTE(60),    HOUR(60 * MINUTE),    DAY(24 * HOUR);     private final int seconds;     private TimeConstants(int seconds) {        this.seconds = seconds;    }     public int getSeconds() {        return seconds;    }}

這樣就可以寫成TimeConstants.MINUTE.getSeconds()的形式,增加了代碼的可讀性和維護(hù)性。

Java枚舉的高級用法

Java枚舉還可以使用抽象方法,實現(xiàn)面向?qū)ο缶幊讨械亩鄳B(tài)性。

public enum Color {    RED {        @Override        public String toString() {            return "紅色";        }    },    GREEN {        @Override        public String toString() {            return "綠色";        }    },    BLUE {        @Override        public String toString() {            return "藍(lán)色";        }    };     public abstract String toString();}

在這個示例中,每個枚舉項覆蓋了toString()方法,返回對應(yīng)的顏色字符串。這樣可以通過Color.RED.toString()等語句來獲取顏色名稱,而且還可以使用多態(tài)來實現(xiàn)更加靈活的代碼。

Java枚舉還可以實現(xiàn)接口,例如:

interface Shape {    double getArea();} enum Shapes implements Shape {    CIRCLE(5),    RECTANGLE(5, 10),    TRIANGLE(5, 10);     private final double[] args;     Shapes(double... args) {        this.args = args;    }     @Override    public double getArea() {        switch (this) {            case CIRCLE:                return Math.PI * Math.pow(args[0], 2);            case RECTANGLE:                return args[0] * args[1];            case TRIANGLE:                return args[0] * args[1] / 2;            default:                throw new IllegalStateException();        }    }}

這樣定義之后,就可以通過Shapes.CIRCLE.getArea()等語句來獲取不同形狀的面積。

總結(jié)

Java枚舉是一種強類型、有限、自給自足的數(shù)據(jù)類型,可以使用抽象方法、接口等高級特性。使用Java枚舉可以簡化代碼、增加可讀性和可維護(hù)性,是Java語言中的一個重要特性。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
請您保持通訊暢通,專屬學(xué)習(xí)老師24小時內(nèi)將與您1V1溝通
免費領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
開班信息
北京校區(qū)
  • 北京校區(qū)
  • 大連校區(qū)
  • 廣州校區(qū)
  • 成都校區(qū)
  • 杭州校區(qū)
  • 長沙校區(qū)
  • 合肥校區(qū)
  • 南京校區(qū)
  • 上海校區(qū)
  • 深圳校區(qū)
  • 武漢校區(qū)
  • 鄭州校區(qū)
  • 西安校區(qū)
  • 青島校區(qū)
  • 重慶校區(qū)
  • 太原校區(qū)
  • 沈陽校區(qū)
  • 南昌校區(qū)
  • 哈爾濱校區(qū)
久久亚洲中文字幕精品一区四,亚洲日本另类欧美一区二区,久久久久久久这里只有免费费精品,高清国产激情视频在线观看
久久国产午夜精品理论片 | 日本乱理伦片在线观看胸大 | 婷婷中文视频在线 | 一级a一片久久久 | 在线免费一级大片 | 亚洲精品一级在线上播放 |