java android 简单枚举示例

本文详细介绍了枚举类型的使用注意事项,包括如何为枚举值指定属性、枚举的内置方法及其实现方式。通过示例代码展示了如何创建带有属性的枚举,并提供了获取枚举值的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

枚举注意事项

  1. 如果要为每个枚举值指定属性,则在枚举中必须声明一个参数为属性对应类型的构造方法(不能是public)

  2. enum内置方法
    int compareTo(E o)
    比较此枚举与指定对象的顺序。

    Class getDeclaringClass()
    返回与此枚举常量的枚举类型相对应的 Class 对象。

    String name()
    返回此枚举常量的名称,在其枚举声明中对其进行声明。

    int ordinal()
    返回枚举常量的序数(它在枚举声明中的位置,其中初始常量序数为零)。

    String toString()
    返回枚举常量的名称,它包含在声明中。

    static <T extends Enum> T valueOf(Class enumType, String name)
    返回带指定名称的指定枚举类型的枚举常量。

    static T[] values()
    返回枚举的所有值

  3. 可以把 enum 看成是一个普通的 class,它们都可以定义一些属性和方法,不同之处是:enum 不能使用 extends 关键字继承其他类

简单举例代码

package demo;

public class Test {

    // 1.定义枚举类型
	
	private enum Animal{
		
		dog("Huskie","8"),cat("bluecat","6");
		private String age;
		private String name;
		
		Animal(String name,String age){
			this.name=name;
			this.age=age;
			
		}
		
		public String getName(){
			return name;
		}
		
		public String getAge(){
			return age;
		}
		
		public static Animal getValue(String name){
			
			for(Animal animal:Animal.values()){
	    		if(animal.name==name){
	    			return animal;
	    		}
	    	}
			throw new IllegalArgumentException("No element matches " + name);
		}
	}
  
    public static void main(String[] args) {
    	for(Animal animal:Animal.values()){
    		System.out.println(animal.getName());
    		System.out.println(animal.name());
    	}
    	Animal.getValue("hashiqi");//抛出错误
    }

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值