Có cách nào tốt hơn của việc tạo ra các mảng từ các yếu tố của một enum:Java: Bắt một loạt các yếu tố ENUM
public static enum LOGICAL {
AND ("&", "AND"),
OR ("||", "OR");
public final String symbol;
public final String label;
LOGICAL(String symbol, String label) {
this.symbol=symbol;
this.label=label;
}
}
public static final String[] LOGICAL_NAMES = new String[LOGICAL.values().length];
static{
for(int i=0; i<LOGICAL.values().length; i++)
LOGICAL_NAMES[i]=LOGICAL.values()[i].symbol;
}
public static final String[] LOGICAL_LABELS = new String[LOGICAL.values().length];
static{
for(int i=0; i<LOGICAL.values().length; i++)
LOGICAL_LABELS[i]=LOGICAL.values()[i].label;
}
Xin giải thích những gì bạn có ý nghĩa bởi "bộ nhớ đệm". Di chuyển các mảng tĩnh vào cơ thể enum? – marcolopes
Lưu trữ nó trong một trường để bạn không tính toán mọi lúc – Bozho
Tôi đã tin rằng mã này sẽ chỉ chạy ONCE (trên truy cập đầu tiên vào lớp). – marcolopes