在JDK版本5之後,Java引入了枚舉。它是使用關鍵字'enum'定義的一組常數。在Java中,final變數與枚舉有些相似。
在本文中,我們將建立一個Java程序,在其中定義一個枚舉類,並嘗試使用valueOf()和values()方法存取枚舉中定義的所有常數。
Enum
的中文翻譯為:枚舉
當我們需要定義一組固定的常數時,我們使用枚舉類別。例如,如果我們想使用一週的天數、行星的名稱、五個母音字母的名稱等。請注意,所有常數的名稱都以大寫字母聲明。
儘管在Java中,枚舉是一種類別類型,但我們不能實例化它。在枚舉中定義的每個常數都是其枚舉類型的實例。它提供了類似類別的其他功能,例如我們可以創建它的實例變數、方法和建構子。
文法
Enum enumeration_name { // constants values }
Example
的中文翻譯為:範例
enum Planet { EARTH, MARS, JUPYTER, NEPTUNE, SATURN, URANUS, VENUS; }
上面的範例說明了我們如何建立一個枚舉類別。枚舉的名稱是Planet,變數EARTH和MARS是它的常數。預設情況下,它們被聲明為public和static。這些常數是自身型別的,因為它們的型別由它們所在的枚舉定義。在這種情況下,它們的類型是Planet。
存取枚舉中定義的所有常數的程式
valueOf() 和 values() 是兩個預先定義方法,它們將幫助我們取得清單中定義的常數的值。
valueOf() − 它傳回作為參數傳遞的常數的值。
values() − 它傳回一個包含枚舉類別中所有常數的陣列。
Example 1
的翻譯為:範例 1
以下範例示範如何使用valueOf()方法取得常數 &minuns;
enum Vibgyor { // creating enumeration VIOLET, INDIGO, BLUE, GREEN, YELLOW, ORANGE, RED; // constants } public class Main { public static void main(String[] args) { System.out.println("The color present in VIBGYOR: "); Vibgyor color = Vibgyor.ORANGE; System.out.println(color + " is present at index: " + color.ordinal()); Vibgyor colr = Vibgyor.valueOf("INDIGO"); System.out.println(colr); System.out.print(Vibgyor.valueOf("RED")); } }
輸出
The color present in VIBGYOR: ORANGE is present at index: 5 INDIGO RED
在上面的程式中,我們建立了一個名為‘Vibgyor’的枚舉類型,並定義了一些常數。變數‘color’和‘colr’是類型為Vibgyor的枚舉變數。我們使用這些變數來取得常數。使用valueOf()方法可以逐一取得枚舉項。 ordinal()方法用於存取ORANGE的索引值。索引從0開始。我們也可以在不創建任何變數的情況下存取常數。
Example 2
的中文翻譯為:範例2
以下範例示範如何使用values()方法取得常數:
enum Vibgyor { VIOLET, INDIGO, BLUE, GREEN, YELLOW, ORANGE, RED; } public class Main { public static void main(String[] args) { System.out.println("The color present in VIBGYOR: "); // for each loop to iterate through all constants for(Vibgyor color : Vibgyor.values()) { System.out.println(color); } } }
輸出
The color present in VIBGYOR: VIOLET INDIGO BLUE GREEN YELLOW ORANGE RED
In the above program, we have accessed all the constants with a single for each loop. values() method can access multiple values at a time.
結論
在本文中,我們討論了enum及其方法。我們建立了一個Java程序,以了解如何使用values()和valueOf()方法存取enum中定義的所有常數。
以上是Java程式存取枚舉中定義的所有常數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

JavadevelovermentIrelyPlatForm-DeTueTososeVeralFactors.1)JVMVariationsAffectPerformanceNandBehaviorAcroSsdifferentos.2)Nativelibrariesviajnijniiniininiinniinindrododerplatefform.3)

Java代碼在不同平台上運行時會有性能差異。 1)JVM的實現和優化策略不同,如OracleJDK和OpenJDK。 2)操作系統的特性,如內存管理和線程調度,也會影響性能。 3)可以通過選擇合適的JVM、調整JVM參數和代碼優化來提升性能。

Java'splatFormentenceHaslimitations不包括PerformanceOverhead,versionCompatibilityIsissues,挑戰WithnativelibraryIntegration,Platform-SpecificFeatures,andjvminstallation/jvminstallation/jvmintenance/jeartenance.therefactorscomplicatorscomplicatethe“ writeOnce”

PlatformIndependendecealLowsProgramStormonanyPlograwsStormanyPlatFormWithOutModification,而LileCross-PlatFormDevelopmentRequiredquiresMomePlatform-specificAdjustments.platFormIndependence,EneblesuniveByjava,EnablesuniversUniversAleversalexecutionbutmayCotutionButMayComproMisePerformance.cross.cross.cross-platformd

JITcompilationinJavaenhancesperformancewhilemaintainingplatformindependence.1)Itdynamicallytranslatesbytecodeintonativemachinecodeatruntime,optimizingfrequentlyusedcode.2)TheJVMremainsplatform-independent,allowingthesameJavaapplicationtorunondifferen

javaispopularforcross-platformdesktopapplicationsduetoits“ writeonce,runany where”哲學。 1)itusesbytiesebyTecodeThatrunsonAnyJvm-備用Platform.2)librarieslikeslikeslikeswingingandjavafxhelpcreatenative-lookingenative-lookinguisis.3)

在Java中編寫平台特定代碼的原因包括訪問特定操作系統功能、與特定硬件交互和優化性能。 1)使用JNA或JNI訪問Windows註冊表;2)通過JNI與Linux特定硬件驅動程序交互;3)通過JNI使用Metal優化macOS上的遊戲性能。儘管如此,編寫平台特定代碼會影響代碼的可移植性、增加複雜性、可能帶來性能開銷和安全風險。

Java將通過雲原生應用、多平台部署和跨語言互操作進一步提昇平台獨立性。 1)雲原生應用將使用GraalVM和Quarkus提升啟動速度。 2)Java將擴展到嵌入式設備、移動設備和量子計算機。 3)通過GraalVM,Java將與Python、JavaScript等語言無縫集成,增強跨語言互操作性。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SublimeText3漢化版
中文版,非常好用

記事本++7.3.1
好用且免費的程式碼編輯器

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。