基本的に私が行ったことは、状態の列挙型を作成することです。状態としてアクセスできるだけでなく、その略語と元のコロニーであったかどうかにもアクセスできるようにしたいと考えています。
public enum States {
...
MASSACHUSETTS("Massachusetts", "MA", true),
MICHIGAN("Michigan", "MI", false),
...; //so on and so forth for all fifty states
private final Object[] values;
States(Object... vals) {
values = vals;
}
public String FULL() {
return (String) values[0];
}
public String ABBR() {
return (String) values[1];
}
public boolean ORIGINAL_COLONY(){
return (boolean) values[2];
}
}
これは、期待どおりに機能するようです。できます
System.out.println(States.ALABAMA); // Prints "ALABAMA"
System.out.println(States.ALABAMA.FULL()); // Prints "Alabama"
System.out.println(States.ALABAMA.ABBR()); // Prints "AL"
System.out.println(States.ALABAMA.ORIGINAL_COLONY());// Prints "false"
列挙型を含むこの特定のシナリオでは、これがこれを行うための最良の方法ですか、それともこの列挙型をセットアップしてフォーマットするためのより良い方法はありますか? 事前にすべてに感謝します!