一种从值转为枚举的方法
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 35/100
- Tipo di issue
- Documentazione
- Chiarezza
- Da chiarire
- Stato di attività
- Ferma
- Stack tecnologico
- java
- Ambito
- documentation
Direzione di ricerca
The issue provides a Java StatusEnum example for mapping an integer value to an enum, but it names no repository file, test, or documentation entry point. First identify where this explanation belongs and confirm the expected contribution; done should mean the example and its class-loading explanation are added in the agreed location.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
代码示例:
public enum StatusEnum {
CREATING(0),
PUBLISHED(1),
FINISHED(2);
private final int status;
StatusEnum(int status) {
this.status = status;
}
public int getStatus() {
return status;
}
private static final Map<Integer, StatusEnum> mapper = new HashMap<>(3);
static {
Arrays.stream(StatusEnum.values()).forEach(
statusEnum -> mapper.put(statusEnum.getStatus(), statusEnum)
);
}
/**
* 将status值转为枚举.
*/
public static StatusEnum fromStatus(final Integer status) {
if (status == null) {
return null;
}
return mapper.get(status);
}
}
枚举的实现原理是:
- 枚举值实际上是
public static final的字段 - 枚举不允许在枚举值之前存在任何代码
- 对
fromStatus的调用导致StatusEnum类加载,而类加载后枚举字段已被初始化完毕,所以这样是行得通的
- Lingua principale
- Java
- Stelle
- 2k
- Fork
- 717
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Non abbiamo ancora controllato i file di configurazione di questo progetto. Parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di seaswalker/jdk-sourcecode-analysis
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 20/100
-
JMM和Linux内存屏障定义Aperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
-
令人迷惑的volatile例子(三)Aperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 18/100
-
令人迷惑的volatile例子(二)Aperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
-
内存屏障(对硬件)Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 25/100
Tutte le issue di seaswalker/jdk-sourcecode-analysis
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
refinedmods/refinedstorage2#1414 · 1 commento ·
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
In Java's `LongBoundedSum`, setting `lower` to `Long.MIN_VALUE` under-estimates the sensitivityAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 73/100
google/differential-privacy#489 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
link-check link-check:manual
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100