package MyEnum;
class ColorTest {
public static final ColorTest Red = new ColorTest("红色");
public static final ColorTest Yellow = new ColorTest("黄色");
public static final ColorTest Blue = new ColorTest("蓝色");
private String name;
private ColorTest(String name) {
this.setName(name);
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public static ColorTest getNum(int n) {
switch (n) {
case 1: {
return Red;
}
case 2: {
return Yellow;
}
case 3: {
return Blue;
}
default:
break;
}
return null;
}
}
public class SimpleTest {
public static void main(String aegs[]) {
ColorTest color1 = ColorTest.Red;
System.out.println(color1.getName());
ColorTest color2 = ColorTest.getNum(2);
System.out.println(color2.getName());
}
}
package MyEnum;
enum Color1 {
Red, Yellow, Blue;
}
public class EnumDemo1 {
public static void main(String args[]) {
Color1 s1 = Color1.Red;
System.out.println(s1);
for (Color1 s2 : Color1.values()) {
System.out.print(s2 + "、");
}
System.out.println();
for (Color1 s3 : Color1.values()) {
print(s3);
}
}
public static void print(Color1 s4) {
switch (s4) {
case Red: {
System.out.println("红色");
break;
}
case Yellow: {
System.out.println("黄色");
break;
}
case Blue: {
System.out.println("蓝色");
break;
}
default:
break;
}
}
}
package MyEnum;
enum Color2_1 {
Red("红色"), Yellow("黄色"), Blue("蓝色");
private String name;
private Color2_1(String name) {
this.setName(name);
}
public void setName(String name) {
this.name = name();
}
public String getName() {
return name;
}
}
public class EnumDemo2_1 {
public static void main(String[] args) {
for (Color2_1 s : Color2_1.values()) {
System.out.println(s.ordinal() + "、" + s.name() + "、" + s.getName());
}
}
}
package MyEnum;
enum Color2_2 {
RED, YELLOW, BLUE;
private String name;
public String getName() {
return name;
}
public void setName(String name) {
switch (this) {
case RED: {
if ("红色".equals(name)) {
this.name = name;
} else {
System.out.println("设置有误");
}
break;
}
case YELLOW: {
if ("黄色".equals(name)) {
this.name = name;
} else {
System.out.println("设置有误");
}
break;
}
case BLUE: {
if ("蓝色".equals(name)) {
this.name = name;
} else {
System.out.println("设置有误");
}
break;
}
}
}
}
public class EnumDemo2_2 {
public static void main(String[] args) {
Color2_2 sd = Color2_2.BLUE;
sd.setName("兰瑟");
sd.setName("蓝色");
System.out.println(sd.getName());
}
}
package MyEnum
import java.util.EnumMap
import java.util.Map
enum ColorMap {
RED, YELLOW, BLUE
}
public class EnumMapDemo {
// 每次运行都是前几次的运行结果,而不运行当前的程序,关键字"main"拼写有误
public static void main(String[] ags) {
Map<ColorMap, String> map = new EnumMap<ColorMap, String>(ColorMap.class)
map.put(ColorMap.RED, "红色")
map.put(ColorMap.YELLOW, "黄色")
map.put(ColorMap.BLUE, "蓝色")
for (ColorMap c : ColorMap.values()) {
System.out.print(map.get(c) + "、")
}
System.out.println()
for (ColorMap c : map.keySet()) {
System.out.print(c.name() + "、")
}
System.out.println()
for (String s : map.values()) {
System.out.print(s + "、")
}
System.out.println()
}
}
package MyEnum
import java.util.EnumSet
enum ColorSet {
Red, Yellow, Blue
}
public class EnumSetDemo {
public static void main(String args[]) {
// 设置一个全部的集合
EnumSet<ColorSet> es1 = null
es1 = EnumSet.allOf(ColorSet.class)
System.out.print("EnumSet.allOf------")
print(es1)
// 设置一个枚举的集合元素
EnumSet<ColorSet> es2 = null
es2 = EnumSet.of(ColorSet.Blue)
System.out.print("EnumSet.of------")
print(es2)
// 放入指定的枚举集合元素
EnumSet<ColorSet> es3 = null
es3 = EnumSet.noneOf(ColorSet.class)
es3.add(ColorSet.Red)
es3.add(ColorSet.Yellow)
System.out.print(".add()----------")
print(es3)
// 创建一个不包含指定集合元素的集合
EnumSet<ColorSet> es40 = null
EnumSet<ColorSet> es41 = null
es40 = EnumSet.noneOf(ColorSet.class)
es40.add(ColorSet.Red)
es40.add(ColorSet.Yellow)
es41 = EnumSet.complementOf(es40)
System.out.print("EnumSet.complementOf-----")
print(es41)
// 创建一个包含指定集合元素的集合
EnumSet<ColorSet> es50 = null
EnumSet<ColorSet> es51 = null
es50 = EnumSet.noneOf(ColorSet.class)
es50.add(ColorSet.Red)
es50.add(ColorSet.Yellow)
es51 = EnumSet.copyOf(es50)
System.out.print("EnumSet.copyOf-----")
print(es51)
}
public static void print(EnumSet<ColorSet> temp) {
for (ColorSet c : temp) {
System.out.print(c + "、")
}
System.out.println()
}
}