枚舉類型java,枚舉類型中的元素都具有一個整型值

本文目錄一覽:

java中的枚舉類型指的是什麼啊?

在Java中,枚舉類型本質上其實就是一個類,枚舉中的常量都是該枚舉類型的實例。雖然枚舉類型有一些限制,比如不能再派生出子枚舉類型,不能調用構造函數,不過我們仍然可以在枚舉類型中定義構造函數、字段和方法

java枚舉類怎麼寫

枚舉(enum)類型是Java 5新增的特性,它是一種新的類型,允許用常量來表示特定的數據片斷,而且全部都以類型安全的形式來表示。

1、常量的使用

在JDK1.5之前,我們定義常量都是:public static fianl….。現在好了,有了枚舉,可以把相關的常量分組到一個枚舉類型里,而且枚舉提供了比常量更多的方法。

1234567

package com; public enum Color { RED, GREEN, BLANK, YELLOW }

使用

123456789101112131415161718192021

package com; public class B { public static void main(String[] args) { System.out.println( isRed( Color.BLANK ) ) ; //結果: false System.out.println( isRed( Color.RED ) ) ; //結果: true } static boolean isRed( Color color ){ if ( Color.RED.equals( color )) { return true ; } return false ; } }

或者 switch 的使用

12345678910111213141516171819202122232425

package com; public class B { public static void main(String[] args) { showColor( Color.RED ); } static void showColor(Color color){ switch ( color ) { case BLANK: System.out.println( color ); break; case RED : System.out.println( color ); break; default: System.out.println( color ); break; } }}

2、自定義函數

package com; public enum Color { RED(“紅色”, 1), GREEN(“綠色”, 2), BLANK(“白色”, 3), YELLO(“黃色”, 4); private String name ; private int index ; private Color( String name , int index ){ this.name = name ; this.index = index ; } 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; } }

使用

package com; public class B { public static void main(String[] args) { //輸出某一枚舉的值 System.out.println( Color.RED.getName() ); System.out.println( Color.RED.getIndex() ); //遍歷所有的枚舉 for( Color color : Color.values()){ System.out.println( color + ” name: ” + color.getName() + ” index: ” + color.getIndex() ); } } }

結果

紅色

1

RED name: 紅色 index: 1

GREEN name: 綠色 index: 2

BLANK name: 白色 index: 3

YELLO name: 黃色 index: 4

總結:

1、枚舉的本質是類,在沒有枚舉之前,仍然可以按照java最基本的編程手段來解決需要用到枚舉的地方。枚舉屏蔽了枚舉值的類型信息,不像在用public static final定義變量必須指定類型。枚舉是用來構建常量數據結構的模板,這個模板可擴展。枚舉的使用增強了程序的健壯性,比如在引用一個不存在的枚舉值的時候,編譯器會報錯。枚舉的更多用法還需要在開發中去研究創造,Java5、Java6增加了不少新的特性,技術在升級,對程序員來說就要學習,如果你熱愛java的話。否則別人用到新特性的代碼你看不懂,那才叫鬱悶。

2、枚舉在Java家族中只佔了很小的一塊比重,所以我在項目中用枚舉的地方不是很多,畢竟,一個項目是很多人開發維護的,用一個陌生的東西,會給其他的同事造成閱讀困難。所以常量大都是用public static final 來定義的。

java什麼是枚舉類型

你可以理解為枚舉也是一個類,但是這個類只有在內部聲明的幾個對象,不可新建對象。當你想使用枚舉類的對象的時候,就像使用類的靜態資源一樣就行了。

Java語言中的枚舉類型如何使用?

Java語言中的枚舉類型的使用方法如下:

用法一:常量;

public enum Color {  

  RED, GREEN, BLANK, YELLOW  

}

用法二:switch;

 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;

            }

        }

    }

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

public enum Color {

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

        // 成員變量

        private String name;

        private int index;

        // 構造方法

        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;

        }

    }

用法四:覆蓋枚舉的方法;

public class Test {

    public enum Color {

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

        // 成員變量

        private String name;

        private int index;

        // 構造方法

        private Color(String name, int index) {

            this.name = name;

            this.index = index;

        }

        // 覆蓋方法

        @Override

        public String toString() {

            return this.index + “_” + this.name;

        }

    }

    public static void main(String[] args) {

        System.out.println(Color.RED.toString());

    }

}

用法五:實現接口;

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;

        // 構造方法

        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);

        }

    }

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

public interface Food {

    enum Coffee implements Food {

      BLACK_COFFEE, DECAF_COFFEE, LATTE, CAPPUCCINO

   }

  enum Dessert implements Food {

      FRUIT, CAKE, GELATO

  }

}

以上就是Java語言中枚舉類型的基本使用方法。

java枚舉類型

InitParameter是在web.xml中配置的Servlet初始參數,採用:

init-param/init-param形式寫入。

Enumeration是一個枚舉接口,遍歷枚舉就能得到init-param參數名稱,如:

while

(enums.hasMoreElements

())

{

String

paramName

=

(String)

enums.nextElement

()

;

String

paramValue

=

getInitParameterValue

(paramName)

;

other

process

here..

}

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/228750.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-10 12:07
下一篇 2024-12-10 12:07

相關推薦

  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • Java Bean加載過程

    Java Bean加載過程涉及到類加載器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean加載的過程。 一、類加載器 類加載器是Java虛擬機…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • int類型變量的細節與注意事項

    本文將從 int 類型變量的定義、聲明、初始化、範圍、運算和類型轉換等方面,對 int 類型變量進行詳細闡述和講解,幫助讀者更好地掌握和應用 int 變量。 一、定義與聲明 int…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發布。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29
  • Python3定義函數參數類型

    Python是一門動態類型語言,不需要在定義變量時顯示的指定變量類型,但是Python3中提供了函數參數類型的聲明功能,在函數定義時明確定義參數類型。在函數的形參後面加上冒號(:)…

    編程 2025-04-29
  • Java判斷字符串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字符串中是否存在多個指定字符: 一、字符串遍歷 字符串是Java編程中非常重要的一種數據類型。要判斷字符串中是否存在多個指定字符…

    編程 2025-04-29
  • VSCode為什麼無法運行Java

    解答:VSCode無法運行Java是因為默認情況下,VSCode並沒有集成Java運行環境,需要手動添加Java運行環境或安裝相關插件才能實現Java代碼的編寫、調試和運行。 一、…

    編程 2025-04-29

發表回復

登錄後才能評論