美文网首页
5.6枚举类

5.6枚举类

作者: 十六只猴子王 | 来源:发表于2019-03-23 19:38 被阅读0次
public enum { SMALL,MEDIUM,LARGE,EXTRA_LARGE};

在比较两个枚举类型的值时,永远不用调用equals,而直接使用“==”就可以了

  • 所有的枚举类型都是Enum类的子类,他们继承这个类的很多种方法,其中最有用的就是toString方法,例如
    Size.SMALL.toString()将返回字符串“SMALL”
  • tostring方法的逆方法时静态方法valueOf
Size s=Enum.valueOf(Size.class,"SMALL");将s设置成Size.SMALL

每一个枚举类型都有一个静态的values方法,它将返回一个包含全部枚举值的数组。

Size[] values = Size.values();

返回的元素Size.SMALL,Size.MEDIUM,Size.LARGE和Size.EXTRA_LARGE

package enums;

import java.util.*;
public class EnumTest
{  
   public static void main(String[] args)
   {  
      Scanner in = new Scanner(System.in);
      System.out.print("Enter a size: (SMALL, MEDIUM, LARGE, EXTRA_LARGE) ");
      String input = in.next().toUpperCase();//toUpperCase() 方法将字符串小写字符转换为大写。
      Size size = Enum.valueOf(Size.class, input);//调用[构造函数](,并赋值
      System.out.println("size=" + size);
      System.out.println("abbreviation=" + size.getAbbreviation());
      if (size == Size.EXTRA_LARGE)
         System.out.println("Good job--you paid attention to the _.");      
   }
}

enum Size
{
   SMALL("S"), MEDIUM("M"), LARGE("L"), EXTRA_LARGE("XL");
/*SMLL("S"),在定义枚举类型成员变量时会自动调用构造函数,如无构造函数则会调用默认构造函数。 
在程序运行时上文相当于执行了如下的代码
public static final Size SMALL = new Size("S");*/
   private Size(String abbreviation) { this.abbreviation = abbreviation; }//获取属性值
   public String getAbbreviation() { return abbreviation; }

   private String abbreviation;
}

static Enum valueOf(Class enumClass ,String name)
返回指定的名字,给定类的枚举常量
String toString()
返回枚举常量名
int ordinal()
返回枚举常量在enum声明中的位置,位置从0开始技术
int compareto(E other)
如果枚举常量在other之前,则返回一个负值;如果this==other,则返回0,否则返回正值,枚举常量的出现次序在enum声明中给出

相关文章

  • 5.6枚举类

    在比较两个枚举类型的值时,永远不用调用equals,而直接使用“==”就可以了 所有的枚举类型都是Enum类的子类...

  • 枚举

    如何定义枚举类 什么枚举类:类里的对象是有限个,可以枚举出来 如何使用enum定义枚举类 枚举...

  • Java篇-枚举的使用

    一 : 自定义枚举类 枚举类调用 二 : 使用enum关键字定义枚举类 让枚举类实现接口: 可以让不同的枚举类的对...

  • 枚举--java24(02/17/2016)

    如何自定义枚举类如何使用enum定义枚举类、枚举类的主要方法实现接口的枚举类 JDK1.5之前需要自定义枚举类JD...

  • java enum实现原理

    一、分析自定义枚举类 普通的枚举类和抽象枚举类相似,故直接分析抽象枚举类。 1. 编写一个抽象枚举类 2. 编译 ...

  • 枚举_enum

    遍历 枚举类: 测试类 反射获取值 枚举类: 测试类:

  • Chapter 8 . 枚举

    阅读原文 Chapter 8 . 枚举 8.1 枚举类 主要内容: 如何自定义枚举类 如何使用enum定义枚举类 ...

  • Java高级-枚举类与注解

    10.1.枚举类的使用: 入门 类的对象只有有限个,确定的 自定义枚举类 一.枚举类的使用1.枚举类的理解: 类的...

  • 枚举保存到数据库中为序号解决方案

    普通枚举转换配置 枚举类 枚举转换类 @Converter(autoApply = true)自动适应 在实体类中...

  • 枚举类

    什么是枚举类? 枚举类的使用 枚举类的理解:类的对象只有有限个,确定的,我们称此类为枚举类。确定则意味着不能再通过...

网友评论

      本文标题:5.6枚举类

      本文链接:https://www.haomeiwen.com/subject/riisvqtx.html