黑马程序员技术交流社区
标题:
各位大侠帮忙看看,给解决一下
[打印本页]
作者:
Bad_Boy
时间:
2013-9-13 22:24
标题:
各位大侠帮忙看看,给解决一下
本帖最后由 Bad_Boy 于 2013-9-14 12:20 编辑
public class Test01 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String input = in.next().toUpperCase();
Colour Colour = Enum.valueOf(Colour.class, input);
System.out.println("Colour = " + Colour);
System.out.println("abbreviation = " + Colour.getAbbreviation());//这个get方法是怎么拿到缩写值的,我一直没看明白
if (Colour == Colour.RED) {
System.out.println("这个颜色很鲜艳");
}
}
enum Colour{
RED("R"), GREEN("G"), YELLOW("Y");
private Colour(String abbreviation) {
this.abbreviation = abbreviation;
}
public String getAbbreviation() {
return abbreviation;
}
private String abbreviation;
}
}
复制代码
作者:
Yuan先生
时间:
2013-9-13 23:25
Color共有RED、GREEN、YELLOW三个对象,第一行RED("R")就相当于调用了Color的构造方法private Colour("R")
作者:
天地有我
时间:
2013-9-14 00:16
本帖最后由 天地有我 于 2013-9-14 00:18 编辑
import java.util.Scanner;
public class Test
{
public static void main(String[] args)
{
//从键盘输入一个颜色
Scanner in = new Scanner(System.in);
//获得颜色的大写表示
String input = in.next().toUpperCase();
//获得实际的颜色枚举实例对象
Color color = Enum.valueOf(Color.class, input);
//打印得到的颜色
System.out.println("Colour = " + color);
//打印该颜色abbreviation属性值
//如果键盘输入的是red,它先通过这个方法Enum.valueOf(Color.class, input)得到枚举对象RED
//然后再通过得到的枚举对象RED的getAbbreviation()方法得到RED所对应的abbreviation属性的具体值,该值是R。
System.out.println("abbreviation = " + color.getAbbreviation());
//如果是RED则打印。
if (color == Color.RED)
{
System.out.println("这个颜色很鲜艳");
}
}
//定义颜色枚举类(内部枚举类)
//枚举类最好独立定义在一个文件里,便于在所有的类中都可以使用
enum Color
{
RED("R"), GREEN("G"), YELLOW("Y");
private Color(String abbreviation)
{
this.abbreviation = abbreviation;
}
public String getAbbreviation()
{
return abbreviation;
}
private String abbreviation;
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2