`
schy_hqh
  • 浏览: 559181 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

(基础)枚举Enum

 
阅读更多

枚举就是用来定义一组常量,将其使用一个枚举符号进行组织

如,信号灯包括:红、黄、绿 3种颜色

如,四季包括:春、夏、秋、冬 4个季节

这些都可以通过枚举类型进行定义,管理和使用起来比较方便!

 

 

用法一、常量

 

package org.java.test.enumeration;

public class ClassA {
	
	/**
	 * 枚举常量定义
	 */
	public static enum INSURED{
		第一被保人,第二被保人,第三被保人
	}

	
	public static void main(String[] args) {
		//取枚举中定义的常量
		String insuredPerson = INSURED.第一被保人.name();
		System.out.println(insuredPerson);
	}
	
}

 

 

用法二、switch语句中使用枚举常量

package org.java.test.enumeration;

public class ClassB {
	/**
	 * 枚举常量
	 */
	public static enum Signal {
		GREEN,YELLOW,RED
	}
	
	
	/**
	 * switch语句中使用常量 
	 */
	public void change(Signal color) {
		switch(color) {
			case RED:System.out.println("red");break;
			case GREEN:System.out.println("green");break;
			case YELLOW:System.out.println("yellow");break;
			default:System.out.println("??");break;
		}
	}
	
	public static void main(String[] args) {
		ClassB obj = new ClassB();
		obj.change(Signal.RED);
	}
}	

 

用法三、为枚举元素设置属性和方法

package org.java.test.enumeration;

public class ClassC {
	/**
	 * 按事物分类--->用枚举定义
	 * 每种又包含不同的特性--->为枚举类型定义属性/方法
	 */
	public static enum Color {
		//初始化枚举类型中的属性
		RED("红色",1),GREEN("绿色",2),YELLOW("黄色",3);
		
		//fields
		private String name;
		private int index;
		
		//constructor
		private Color(String name, int index) {
			this.name = name;
			this.index = index;
		}
		
		public static String getNameByIndex(int index) {
			for(Color c : Color.values()) {
				if(c.getIndex()==index) {
					return c.getName();
				}
			}
			return null;
		}
		
		
		
		@Override
		public String toString() {
			return this.name+"-"+this.index;
		}

		//getters
		public String getName() {
			return name;
		}

		public void setName(String name) {
			this.name = name;
		}

		public int getIndex() {
			return index;
		}

		public void setIndex(int index) {
			this.index = index;
		}
	}
	
	public static void main(String[] args) {
		
		Color[] colors = Color.values();
		for(Color c : colors) {
			System.out.println(c);
		}
		
		int index = 1;
		String name = Color.getNameByIndex(index);
		System.out.println(name);

	}
}

 

 

用法四、实现接口

package org.java.test.enumeration;

public interface InterfaceA {
	public void print();
}

 

package org.java.test.enumeration;

public class ClassD {
	
	public static enum Color implements InterfaceA {
		//elements
		RED("红色","禁止"),YELLOW("黄色","小心"),GREEN("绿色","允许");
		
		//field
		private String flag;
		private String info;
		
		//constructor
		private Color(String flag, String info) {
			this.flag = flag;
			this.info = info;
		}
		
		@Override
		public void print() {
			System.out.println(this.getFlag()+"--->"+this.getInfo());
		}
		
		
		//getters setters
		public String getInfo() {
			return info;
		}

		public void setInfo(String info) {
			this.info = info;
		}

		public String getFlag() {
			return flag;
		}

		public void setFlag(String flag) {
			this.flag = flag;
		}
		
		
	}

	
	public static void main(String[] args) {
		
		for(Color c :Color.values()) {
			c.print();
		}
	}
}

 

 

 

 

 

分享到:
评论

相关推荐

    枚举enum的一些案例

    枚举Enum的一些案例 枚举(enum)是一种特殊的值类型,它从 System.Enum 继承而来,并为基础的基元类型的值提供替代名称。枚举类型有名称、基础类型和一组字段。基础类型必须是一个内置的有符号(或无符号)整数...

    枚举enum和switch 的使用

    除了基础的使用,C#中的枚举还支持高级特性,如为枚举成员定义属性、枚举与接口的结合使用等。这些特性增加了枚举的灵活性和表达能力,使得开发者能够根据具体需求编写更加复杂和精细的代码。 掌握枚举和`switch`...

    Java JDBC简单入门之枚举(Enum)、泛型、反射、JDBC整合

    通过以上知识点,你可以构建一个基础的Java JDBC应用,结合枚举增强代码的可读性,利用泛型提高代码复用,运用反射简化数据操作,整合JDBC实现与数据库的高效交互。在实际项目中,还可以考虑使用ORM框架如Hibernate...

    给枚举值增加扩展数据

    在编程中,枚举(Enum)是一种特殊的数据类型,用于定义一组预定义的常量,这些常量通常代表特定的值或状态。在C#等编程语言中,枚举可以帮助我们编写更清晰、更具可读性的代码。然而,标准枚举仅支持基本数据类型...

    枚举类型enum用法

    枚举类型(enum)在编程语言中,如C语言,是一种强大的工具,用于定义一组具有固定数量和特定名称的常量。这些常量通常代表一些有限的、互斥的值集合,比如颜色、星期几或者状态等。枚举类型不仅提高了代码的可读性...

    Python中的枚举类型:使用`enum`模块的深入指南

    本文将详细介绍如何在Python中使用enum模块定义枚举,包括枚举的基础概念、定义方法、使用场景以及高级应用。 Python的enum模块提供了一种强大的方式来定义和使用枚举类型。枚举不仅使代码更加清晰和易于维护,还...

    Python中的枚举类型:使用Enum类的详细指南

    本文将详细介绍如何在Python中使用枚举类型,包括枚举的基础概念、创建和使用枚举类的步骤,以及枚举在实际编程中的应用案例。 枚举类型是Python中一个强大的特性,它可以帮助开发者编写更清晰、更易于维护的代码。...

    c代码-C:枚举 enum

    在C语言中,枚举(enum)是一种定义符号常量的数据类型,它允许我们为整数值赋予可读性更强的名字。枚举常量是整数,但它们的类型可以是`int`、`char`或`unsigned int`,具体取决于编译器的实现。在本教程中,我们将...

    Java 基础枚举.pdf

    在 Java 中,枚举由 `enum` 关键字声明。基本语法如下: ```java enum EnumName { CONSTANT1, CONSTANT2, ..., CONSTANTN; } ``` 在这个结构中,`EnumName` 是枚举类型的名称,`CONSTANT1, CONSTANT2, ..., ...

    502.500.JAVA基础教程_枚举类与注解-使用enum关键字定义的枚举类实现接口(502).rar

    在Java编程语言中,枚举(Enum)是一种特殊的类,用于定义一组固定的常量。枚举类型在很多情况下被用来表示有限的、已知数量的值,如星期、颜色、状态等。本教程将深入讲解如何使用`enum`关键字来定义枚举类,并探讨...

    enum 结构分析源码

    枚举(enum)在编程语言中是一种非常基础且重要的数据类型,它允许程序员定义一组预定义的常量,这些常量通常表示特定的值或状态。在这个“enum 结构分析源码”资源中,我们主要关注的是C语言中的枚举使用和实现。...

    计算机后端-Java-Java核心基础-第23章 枚举类与注解 06. 使用enum关键字定义枚举类.avi

    计算机后端-Java-Java核心基础-第23章 枚举类与注解 06. 使用enum关键字定义枚举类.avi

    9.尚硅谷_java基础_枚举&注解

    枚举 定义 自实现枚举类 使用 enum 定义枚举类 实现接口的枚举类 枚举类的方法 注解

    C# 变量 枚举和数组

    对于任何级别的C#开发者,理解变量、枚举(enum)和数组是至关重要的基础概念。下面将详细介绍这三个主题。 **1. 变量** 变量在编程中扮演着存储数据的角色。它们可以是各种数据类型,如整型(int)、浮点型(float...

    Python语言基础:枚举类的使用.pptx

    虽然Python的标准库中没有内置的枚举类型,但自Python 3.4开始,引入了`enum`模块,提供了方便的枚举类来创建枚举对象。然而,在早期版本或者在不使用`enum`模块的情况下,开发者通常会使用字典或类来模拟枚举的特性...

    计算机后端-Java-Java核心基础-第23章 枚举类与注解 08. 使用enum关键字定义的枚举类实现接口.avi

    计算机后端-Java-Java核心基础-第23章 枚举类与注解 08. 使用enum关键字定义的枚举类实

    大学课程讲义-Java基础-枚举&注解.pptx

    Java 基础知识点总览 - 枚举和注解 Java 中的枚举(enumeration)是一种特殊的数据类型,它可以表示有限的、固定的常量集。枚举类是一种特殊的类,它的对象是有限的、固定的和不可变的。 枚举的定义 在 Java 中,...

    Struct And Enums结构和枚举

    结构和枚举都是编程语言中重要的基础组件,熟练掌握它们的使用对于编写高效、清晰的代码至关重要。在VS2005环境下,你可以方便地调试和测试这些示例,加深对这两种数据类型工作原理的理解。通过不断练习和探索,你将...

    Laravel开发-laravel-enum

    `laravel-enum` 包引入了枚举类型的概念,它允许我们将这些固定的值封装在类中,提供了更安全、可读性更强的解决方案。 **二、安装与配置** 首先,你需要通过 Composer 来安装 `enum` 包。在终端中运行以下命令: ...

Global site tag (gtag.js) - Google Analytics