Using Java enums with multiple parameters -


i'm using enums below snippet , helpful me. however, when want define more 1 enum (e.g. enum2, enum3), have same parameters, have write tagged "repeated code" in snippet.

i'm thinking encapsulate parameters (p1, ...) within object , give reference object in enum. however, idea disturbs me since other instances generated.

is above approach right, or how can solve problem?

public enum enum1 {     key_1(p1, p2, ..., pn),     ...     key_m(p1, p2, ..., pn);      // constructor      // repeated code     private int p1, p2, ..., pn;     public getp1();     ...     public getpm(); } 

try this:

public enum enum1 {      key_1(arrays.aslist(1, 2, 3)),     key_2(arrays.aslist(4, 5, 6));      enum1(list<integer> ps) {         params = collections.unmodifiablelist(ps);     }      private list<integer> params;      public int getp(int idx) {         return params.get(idx);     }  } 

given have several parameters of same type, use collection. later, when need retrieve particular parameter use getp() method, remember indexes 0-based.


Comments

Popular posts from this blog

java - How to specify maven bin in eclipse maven plugin? -

single sign on - Logging into Plone site with credentials passed through HTTP -

php - Why does AJAX not process login form? -