Skip to main content

Posts

Showing posts from November, 2012

Different ways to use enum's in java

Technique: Simple enum and retrieve/reverse lookup using valueOf() public class OrderService {
    // Note : enums can be defined in its own file or inside a class if they are only relevant with it.
    public enum Status { PROCESSING, SHIPPED, COMPLETED; }

    public void update(long orderId, Status status) {
         // something
    }
}
// import static OrderService.Status;
// import static OrderService.Status.* ;
// OrderService service = new OrderService(); // service.update(100L, SHIPPED); // use enum // Status status = Status.valueOf("SHIPPED"); // reverse lookup by constant, throws IllegalArgumentException if no match. // System.out.println ( status.toString() ); // prints value - SHIPPED
Technique: Stores enum constant and value in a map, retrieve/reverse lookup using fromValue()
public enum Status {

        PROCESSING("processing"), SHIPPED("shipping"), COMPLETED("completed");

        private String val;
        private Status(String val…