Mostra la pàginaRevisions anteriorsQuè hi enllaçaExporta a PDFTorna dalt Aquesta pàgina és només de lectura. Podeu veure'n el codi font, però no podeu canviar-la. Consulteu el vostre administrador si penseu que això és degut a algun error. = Enum {{tag>java API}} == revisar * [[https://www.mkyong.com/java/java-enum-example/]] == ejemplos * [[https://www.mkyong.com/java/java-enum-example/]] * [[https://beginnersbook.com/2014/09/java-enum-examples/]] === simple <sxh java> public enum UserStatus { PENDING, ACTIVE, INACTIVE, DELETED; } </sxh> <sxh java> System.out.println(UserStatus.ACTIVE); //ACTIVE </sxh> === simple + campo <sxh java> public enum WhoisRIR { ARIN("whois.arin.net"), RIPE("whois.ripe.net"), APNIC("whois.apnic.net"), AFRINIC("whois.afrinic.net"), LACNIC("whois.lacnic.net"), JPNIC("whois.nic.ad.jp"), KRNIC("whois.nic.or.kr"), CNNIC("ipwhois.cnnic.cn"), UNKNOWN(""); private String url; WhoisRIR(String url) { this.url = url; } public String url() { return url; } } </sxh> <sxh java> System.out.println(WhoisRIR.ARIN.url()); //whois.arin.net </sxh> === simple + campo + lógica <sxh java> public enum Operation { PLUS, MINUS, TIMES, DIVIDE; double calculate(double x, double y) { switch (this) { case PLUS: return x + y; case MINUS: return x - y; case TIMES: return x * y; case DIVIDE: return x / y; default: throw new AssertionError("Unknown operations " + this); } } } </sxh> <sxh java> double result = Operation.PLUS.calculate(1, 2); System.out.println(result); //3.0 </sxh> === bucle <sxh java> for (UserStatus status : UserStatus.values()) { System.out.println(status); } </sxh> <sxh> PENDING ACTIVE INACTIVE DELETED </sxh> === comparación <sxh java> WhoisRIR rir = WhoisRIR.APNIC; if(rir == WhoisRIR.APNIC) { System.out.println("This is APNIC : " + rir.url()); //This is APNIC : whois.apnic.net } </sxh> === comparacion 2 <sxh java> public class Test { public static void main(String[] args) { WhoisRIR rir = WhoisRIR.RIPE; switch (rir) { case ARIN: System.out.println("This is ARIN"); break; case APNIC: System.out.println("This is APNIC"); break; case RIPE: System.out.println("This is RIPE"); // This is RIPE break; default: throw new AssertionError("Unknown RIR " + rir); } } } </sxh> === string to enum <sxh java> //enum valueOf + uppercase Operation op = Operation.valueOf("times".toUpperCase()); System.out.println(op.calculate(10, 3)); // 30.0 </sxh> <sxh java> // Recommended Solution : add locale WhoisRIR rir = WhoisRIR.valueOf("ripe".toUpperCase(Locale.ENGLISH)); System.out.println(rir); //RIPE System.out.println(rir.url()); //whois.ripe.net </sxh> development/java/enum.txt Darrera modificació: 05/06/2018 03:01per mate