java 枚举 键值对
时间: 2023-08-30 07:05:55 浏览: 58
在Java中,枚举(Enum)是一种特殊类型的类,用于定义一组有限的常量。每个枚举常量都是枚举类的一个实例,可以包含属性和方法。以下是如何在Java中定义一个带有键值对的枚举类:
```java
public enum Fruit {
APPLE("red"), ORANGE("orange"), BANANA("yellow");
private String color;
Fruit(String color) {
this.color = color;
}
public String getColor() {
return color;
}
}
```
在上面的例子中,我们定义了一个Fruit枚举类,其中包含三个常量:APPLE、ORANGE和BANANA。每个常量都有一个颜色属性,可以通过getColor()方法访问。在使用枚举时,可以通过枚举名来访问常量,例如:
```java
Fruit apple = Fruit.APPLE;
System.out.println(apple.getColor()); // 输出 "red"
```
通过这种方式,我们可以使用枚举来定义一组有限的常量,并且为每个常量定义自己的属性和方法。
相关问题
java枚举键值对,怎么通过键取值
Java中的枚举类型可以通过枚举值的名称(键)来获取对应的值。具体实现方式如下:
1. 定义一个枚举类型,例如:
```
public enum Weekday {
MONDAY("星期一"),
TUESDAY("星期二"),
WEDNESDAY("星期三"),
THURSDAY("星期四"),
FRIDAY("星期五"),
SATURDAY("星期六"),
SUNDAY("星期日");
private String chineseName;
private Weekday(String chineseName) {
this.chineseName = chineseName;
}
public String getChineseName() {
return chineseName;
}
}
```
2. 在枚举类型中定义一个方法,用于获取对应的值,例如:
```
public String getChineseName() {
return chineseName;
}
```
3. 通过枚举值的名称(键),调用该方法获取对应的值,例如:
```
Weekday monday = Weekday.MONDAY;
String chineseName = monday.getChineseName(); // 获取“星期一”
```
java枚举键值对,以MONDAY(“1”,”星期一”)的形式怎么通过1取到星期一
可以通过遍历枚举类型的所有值,找到对应键值为1的枚举值,然后获取该枚举值对应的星期一字符串。具体代码如下:
```java
enum Weekday {
MONDAY("1", "星期一"),
TUESDAY("2", "星期二"),
WEDNESDAY("3", "星期三"),
THURSDAY("4", "星期四"),
FRIDAY("5", "星期五"),
SATURDAY("6", "星期六"),
SUNDAY("7", "星期日");
private String code;
private String name;
Weekday(String code, String name) {
this.code = code;
this.name = name;
}
public static String getNameByCode(String code) {
for (Weekday weekday : Weekday.values()) {
if (weekday.code.equals(code)) {
return weekday.name;
}
}
return null;
}
}
```
然后可以通过调用`Weekday.getNameByCode("1")`方法来取得星期一字符串。