您当前的位置: 首页 >  Java

Z3eyOnd

暂无认证

  • 4浏览

    0关注

    117博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

java学习之路3--枚举

Z3eyOnd 发布时间:2021-06-13 12:13:49 ,浏览量:4

文章目录
    • 枚举

枚举
  1. 也是一种特殊的类,可以表示一组常量,可以定义对象
  2. 一个简单的实例:
enum Color
{
red,green,blue;
}
public class Test
{
	public static void main(String[]args)
	{
	Color c1=Color.red;
	System.out.println(c1);
	}
}

  1. 迭代枚举元素:使用for来迭代
enum Color
{
    RED, GREEN, BLUE;
}
public class MyClass {
  public static void main(String[] args) {
    for (Color myVar : Color.values()) {
      System.out.println(myVar);
    }
  }
}
  1. 几种方法:
values() 返回枚举类中所有的值。
ordinal()方法可以找到每个枚举常量的索引,就像数组索引一样。
valueOf()方法返回指定字符串值的枚举常量。
enum Color
{
    RED, GREEN, BLUE;
}
 
public class Test
{
    public static void main(String[] args)
    {
        // 调用 values()
        Color[] arr = Color.values();
 
        // 迭代枚举
        for (Color col : arr)
        {
            // 查看索引
            System.out.println(col + " at index " + col.ordinal());
        }
 
        // 使用 valueOf() 返回枚举常量,不存在的会报错 IllegalArgumentException
        System.out.println(Color.valueOf("RED"));
        // System.out.println(Color.valueOf("WHITE"));
    }
}
  1. 枚举与其他类一样,都可以有变量,成员方法,构造函数(只可为private):
enum Color
{
    RED, GREEN, BLUE;
 
    // 构造函数
    private Color()
    {
        System.out.println("Constructor called for : " + this.toString());
    }
 
    public void colorInfo()
    {
        System.out.println("Universal Color");
    }
}
 
public class Test
{    
    // 输出
    public static void main(String[] args)
    {
        Color c1 = Color.RED;
        System.out.println(c1);
        c1.colorInfo();
    }
}
关注
打赏
1651657201
查看更多评论
立即登录/注册

微信扫码登录

0.0544s