Articles of enfasi

Dov’è la documentazione per il metodo values ​​() di Enum?

Dichiaro un enum come: enum Sex {MALE,FEMALE}; E poi, iterate enum come mostrato di seguito: for(Sex v : Sex.values()){ System.out.println(” values :”+ v); } Ho controllato l’API Java ma non riesco a trovare il metodo values ​​()? Sono curioso di sapere da dove viene questo metodo? Collegamento API: https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html

Il modo migliore per creare enum di stringhe?

Qual è il modo migliore per avere un tipo enum rappresentare un insieme di stringhe? Ho provato questo: enum Strings{ STRING_ONE(“ONE”), STRING_TWO(“TWO”) } Come posso quindi usarli come Strings ?

Enum in Java. I vantaggi?

Quali sono alcuni vantaggi nel rendere enum in Java simile a una class, piuttosto che una semplice raccolta di costanti come in C / C ++?

Perché il costruttore di enum non può accedere ai campi statici?

Perché il costruttore di enum non può accedere ai campi e ai metodi statici? Questo è perfettamente valido con una class, ma non è permesso con un enum. Quello che sto cercando di fare è archiviare le mie istanze enum in una mappa statica. Considera questo codice di esempio che consente la ricerca per abbreivazione: […]

Enum Java e file di class aggiuntivi

Ho notato che le enums introducono molti file di class aggiuntivi (Classe $ 1) dopo la compilazione che gonfia le dimensioni totali. Sembra essere collegato a ogni class che utilizza anche un enum, e questi sono spesso duplicati. Perché questo si verifica e c’è un modo per prevenirlo senza rimuovere l’enum. (La ragione della domanda […]

In che modo values ​​() è implementato per le enumerazioni di Java 6?

In Java, puoi creare un enum come segue: public enum Letter { A, B, C, D, E, F, G; static { for(Letter letter : values()) { // do something with letter } } } Questa domanda riguarda il metodo “values ​​()”. In particolare, come viene implementato? Di solito, potrei passare al sorgente per le classi […]

Posso aggiungere e rimuovere elementi di enumerazione in fase di esecuzione in Java

È ansible aggiungere e rimuovere elementi da un enum in Java in fase di runtime? Ad esempio, potrei leggere le etichette e gli argomenti del costruttore di un enum da un file? @saua, è solo una questione di se può essere fatto davvero per interesse. Speravo che ci sarebbe stato un modo pulito per modificare […]

Qual è il vantaggio di un enum di Java rispetto a una class con campi finali statici pubblici?

Ho molta familiarità con C # ma sto iniziando a lavorare di più in Java. Mi aspettavo di sapere che le enumerazioni in Java erano sostanzialmente equivalenti a quelle in C # ma a quanto pare non è questo il caso. Inizialmente ero entusiasta di apprendere che le enumerazioni Java potevano contenere più parti di […]

Confronto tra membri di enum Java: == o equals ()?

So che le enumerazioni Java sono compilate in classi con costruttori privati ​​e un gruppo di membri statici pubblici. Quando si confrontano due membri di una data enum, ho sempre usato .equals() , ad es public useEnums(SomeEnum a) { if(a.equals(SomeEnum.SOME_ENUM_VALUE)) { … } … } Tuttavia, ho appena trovato un codice che utilizza l’operatore di […]

Quali sono le enumerazioni e perché sono utili?

Oggi stavo sfogliando alcune domande su questo sito e ho trovato una menzione di un enum utilizzato in modalità singleton sui presunti vantaggi di sicurezza del thread per tale soluzione. Non ho mai usato enum e sto programmando in Java da più di un paio d’anni. E a quanto pare hanno cambiato molto. Ora fanno […]