java枚举的使用

定义枚举

public enum YesOrNo {
	YES("是") , 

	NO("否") ;  

	private String text ; 

	private int code ;

	YesOrNo(){
		this.text = this.name() ;
		this.code = this.ordinal() ;
	}

	YesOrNo(String text){
		this.text = text ;
		this.code = this.ordinal() ;
	}

	YesOrNo(String text,int code){
		this.text = text ;
		this.code = code ;
	}

	public String getText() {
		return text;
	}

	public int getCode() {
		return code;
	}
}

调用枚举:

public static void main(String[] args) throws Exception{
		Method method = MethodUtils.getAccessibleMethod(YesOrNo.class  , "getText") ;
		Method method1 = MethodUtils.getAccessibleMethod(YesOrNo.class  , "getCode") ; // 使用类反射

		System.out.println( method.invoke( YesOrNo.YES ) ) ;
		System.out.println( method1.invoke( YesOrNo.NO ) ) ; 

		System.out.println( YesOrNo.YES.getText() );
	}

java枚举的使用

时间: 2024-10-16 07:01:12

java枚举的使用的相关文章

java 枚举常用操作

在JDK1.5 之前,我们定义常量都是: public static fianl.... .现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法. Java代码 public enum Color { } JDK1.6之前的switch语句只支持int,char,enum类型,使用枚举,能让我们的代码可读性更强. Java代码 enum Signal { } public class TrafficLight { public void change() {

Java枚举测试

Java枚举定义 枚举值定义,在构造方法赋值,重写toString(); 测试类 package com.yjm.test; enum TestEnum { ye("yellow"),re("red"),gr("green"); private String str; public String getStr() { return this.str; } public void setStr(String str) { this.str = st

java枚举在android项目应用

今天修复一个公司很早以前的android应用功能,里面的代码逻辑已经完全错乱,然后发现返回的数据完全不对了.然后修复了整整两天.然后我重新整理了一遍,重构就算不上了.然后就用上了枚举. 什么是枚举?我以前也不懂,当时我看见公司的项目中使用了枚举当做项目一个控制,比如修改已经写好的app然后为一些手机厂商做定制版.可能要去掉广告,还有跳转到商店url都不同,特别是国内基本都没有google play.我们为了避免以后的修改,就会写个枚举来控制它. public enum Market { Defa

java枚举小结

在百度百科上是这样介绍枚举的: 在C#或C++,java等一些计算机编程语言中,枚举类型是一种基本数据类型而不是构造数据类型,而在C语言等计算机编程语言中,它是一种构造数据类型.枚举类型用于声明一组命名的常数,当一个变量有几种可能的取值时,可以将它定义为枚举类型. 而在java中,枚举扩大了这一概念,因为在java中,枚举已经称为一个类,因此完全具有类的特性. 我们都知道枚举是JDK1.5才推出的新概念,那么在此之前,我们如果想使用一些固定的常量集合,比如性别(2个),季节(4个),星期(7个)

java 枚举(enum)学习

之前没有用过枚举,不懂.今天找了些资料学习了,现在总结如下:(希望高手看到后批评指教) 枚举的作用: 1.限定某一类型的取值范围. 2.不再写public static final...(如果取值范围太广,就太麻烦了),但最终enum还是要转化成class类型,还是会加public static final... 一段代码说明为什么java要有enum类型: package good.good.study; public class EnumStudy2 { public static void

向Java枚举类型中添加新方法

除了不能继承enum之外,可将其看做一个常规类.甚至可以有main方法. 注意:必须先定义enum实例,实例的最后有一个分号. 下面是一个例子:返回对实例自身的描述,而非默认的toString返回枚举实例的名字. public enum Color { RED("红色", 1), GREEN("绿色", 2), BLANK("白色", 3), YELLO("黄色", 4); // 成员变量 private String nam

java 枚举类型分析

最近做android开发,需要用到枚举值,这样可以连续赋值,我按之前c++那样书写,如下所示: public enum ColorSelect { RED_BAGE = 0, GREEN_BAGE, BLUE_BAGE; } 编译不过. 我将赋值语句修改了以后,如下所示: public enum ColorSelect { RED_BAGE , GREEN_BAGE, BLUE_BAGE; } 编译通过.说明C++那样的赋值方法不适用java.所以,我需要弄清楚的是: 1. 在java平台上,如

java枚举怎么用的

package com.pingan.property.icore.pap.common.constants; /** * */public enum UMAuthStatusEnum implements BaseEnumI { // UM验证失败的几种原因 AUTHORIZATION_IS_NULL("0", "header auth信息为空"), UM_API_FAILED("1", "um系统API调用失败"); St

java枚举的定义

package com.sadhu; /** java枚举的定义 枚举中可以定义构造器.方法.字段 所有枚举类都集成了Enum类 */ public class Sample {     public enum Size//定义枚举     {         SMALL("S"),//调用构造器 每个枚举值都要调用构造器         MEDIUM("M"),         LARGE("L"),         EXTRA_LARGE(&