枚举类型

枚举的含义及其应用

吃可爱长大的小学妹 提交于 2020-03-05 23:02:39
本章讲解如下枚举的如下几个知识点: 1、什么是枚举? 2、枚举是值类型还是引用类型? 3、如何定义枚举? 4、枚举的好处? 5、枚举在实际系统开发过程中的用处? 一、什么是枚举 枚举:用来 存放一组固定的常量 它 是用来解决用户进行多次 if /switch 重复简单的判断 二、 枚举是值类型还是引用类型? 枚举是值类型 三、如何定义枚举? 定义枚举的语法非常简单,如下: 枚举的语法 public enum 枚举名 { } 枚举的定义1,如下: public enum ColorEnum { 红色, //注意,系统会默认给它赋值为0 蓝色, //系统赋值为1 黑色, //系统赋值为2 粉红色 //系统赋值为3 } 枚举的定义方式2,如下: public enum ColorEnum { 红色=2, //用户自己赋值 所以枚举是一组 符号名称/值 配对 蓝色, // 系统赋值为3 黑色=2, //用户自己赋值2 粉红色 //系统赋值为3 } 来源: https://www.cnblogs.com/tonney/archive/2011/04/28/2032270.html

简单枚举类型——植物与颜色 Time Limit: 1000 ms Memory Limit: 65536 KiB 1959

倖福魔咒の 提交于 2020-03-05 09:59:29
简单枚举类型——植物与颜色 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 请定义具有red, orange, yellow, green, blue, violet六种颜色的枚举类型color,根据输入的颜色名称,输出以下六种植物花朵的颜色: Rose(red), Poppies(orange), Sunflower(yellow), Grass(green), Bluebells(blue), Violets(violet)。如果输入的颜色名称不在枚举类型color中,例如输入purple,请输出I don’t know about the color purple. Input 输入数据有多行,每行有一个字符串代表颜色名称,颜色名称最多30个字符,直到文件结束为止。 Output 输出对应颜色的植物名称,例如:Bluebells are blue. 如果输入的颜色名称不在枚举类型color中,例如purple, 请输出I don’t know about the color purple. Sample Input blue yellow purple Sample Output Bluebells are blue. Sunflower are yellow. I don’t know

Java 枚举7常见种用法

一笑奈何 提交于 2020-03-04 08:22:56
DK1.5引入了新的类型——枚举。在 Java 中它虽然算个“小”功能,却给我的开发带来了“大”方便。 用法一:常量 在JDK1.5 之前,我们定义常量都是: public static fianl.... 。现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法。 Java代码 public enum Color { RED, GREEN, BLANK, YELLOW } 用法二:switch JDK1.6之前的switch语句只支持int,char,enum类型,使用枚举,能让我们的代码可读性更强。 Java代码 enum Signal { GREEN, YELLOW, RED } public class TrafficLight { Signal color = Signal.RED; public void change() { switch (color) { case RED: color = Signal.GREEN; break; case YELLOW: color = Signal.RED; break; case GREEN: color = Signal.YELLOW; break; } } } 用法三:向枚举中添加新方法 如果打算自定义自己的方法,那么必须在enum实例序列的最后添加一个分号。而且 Java

【jmeter】dubbo 枚举数据类型

|▌冷眼眸甩不掉的悲伤 提交于 2020-03-04 00:13:58
在使用jmeter编写dubbo压测接口时,发现参数是枚举类型时出现错误 代码中com.lluozh.api.UserProperty,是一个自定义的枚举类,该枚举有3个值:PHONE、SMS、EMAIl 2020 - 03 - 03 20 : 01 : 55 , 635 ERROR i . g . n . j . p . d . s . DubboSample : Exception: org . apache . dubbo . rpc . RpcException : Failfast invoke providers dubbo : // 172.30 .178 .7 : 20880 / com . xxx . xxx . api . service . xxxxApiService 枚举类型数据比较特殊,是否因为请求参数的格式问题导致,修改请求参数格式如下 报错误 2020 - 03 - 03 20 : 23 : 26 , 913 ERROR i . g . n . j . p . u . JsonUtils : json to class [ sun . reflect . generics . reflectiveObjects . ParameterizedTypeImpl ] is error! com . google . gson .

第四节:Java枚举

拟墨画扇 提交于 2020-03-03 23:57:25
7 种常见的用法 用法一:常量   在JDK1.5 之前,我们定义常量都是: public static fianl.... 。现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法。 1 public enum Color { 2 RED, GREEN, BLANK, YELLOW 3 } 用法二: switch 1 enum Signal { 2 GREEN, YELLOW, RED 3 } 4 public class TrafficLight { 5 Signal color = Signal.RED; 6 public void change() { 7 switch (color) { 8 case RED: 9 color = Signal.GREEN; 10 break; 11 case YELLOW: 12 color = Signal.RED; 13 break; 14 case GREEN: 15 color = Signal.YELLOW; 16 break; 17 } 18 } 19 } 用法三:向枚举中添加新方法 1 public enum Color { 2 RED("红色", 1), GREEN("绿色", 2), BLANK("白色", 3), YELLO("黄色", 4); 3 // 成员变量 4 private

java技能提升计划

让人想犯罪 __ 提交于 2020-03-03 07:14:19
近日向领导汇报工作时,发现自己工作两年多来,在技能提升方面,始终是基于需求驱动,自主学习的觉悟比较不足,于是在网上搜索汇总得到以下java技能提升的一些知识点,粗略扫了一遍,发现一知半解甚至没有接触过的内容比较多,始知自身所掌握之局限。便开通了这个CSDN账号,计划在日后工作之余,有选择地研究下面的一些重要知识点。每次学习所得的内容,我会另开文章记录学习过程中的思考、疑惑、结论等,供自己日后回顾,若能惠及他人,也是我的荣幸。希望能够坚持下去。 一、基础篇 面向对象 什么是面向对象 面向对象、面向过程 面向对象的三大基本特征和五大基本原则 平台无关性 Java如何实现的平台无关 JVM还支持哪些语言(Kotlin、Groovy、JRuby、Jython、Scala) 值传递 值传递、引用传递 为什么说Java中只有值传递 封装、继承、多态 什么是多态、方法重写与重载 Java的继承与实现 构造函数与默认构造函数 类变量、成员变量和局部变量 成员变量和方法作用域 Java基础知识 基本数据类型 7种基本数据类型:整型、浮点型、布尔型、字符型 整型中byte、short、int、long的取值范围 什么是浮点型?什么是单精度和双精度?为什么不能用浮点型表示金额? 自动拆装箱 什么是包装类型、什么是基本类型、什么是自动拆装箱 Integer的缓存机制 String 字符串的不可变性 JDK

IEnumerable与IEnumerator

你说的曾经没有我的故事 提交于 2020-03-02 03:00:53
IEnumerable接口 IEnumerable接口:实现该接口的类,表明该类下有可以枚举的元素 public interface IEnumerable { //返回一个实现了IEnumerator接口的对象 //我的理解:实现该接口的类,用其下哪个可枚举的元素实现该方法那么当该类被枚举时,将得到该类下的某个可枚举元素的元素 IEnumerator GetEnumerator(); } public class TestEnumerable : IEnumerable { //可枚举元素 private Student[] _students; public TestEnumerable(Student[] list) { _students = list; } public IEnumerator GetEnumerator() { //当TestEnumerator被枚举时,将得到_students的元素 return _students.GetEnumerator(); } } public class Student { public string ID { get; set; } public string Name { get; set; } public Student(string id, string name) { ID = id; Name = name;

JavaBasic:枚举类

社会主义新天地 提交于 2020-03-02 00:26:50
通过enum定义枚举类 定义的enum类型总是继承自java.lang.Enum,且无法被继承 只能定义出enum的实例,无法通过new操作符创建新的enum 定义的每个实例都是引用类型的一味实例 可以将enum类型用于switch语句 public class Main { public static void main ( String [ ] args ) { for ( Weekday day : Weekday . values ( ) ) { System . out . println ( day . name ( ) ) ; } Weekday fri = Weekday . FRI ; //enum ->String System . out . println ( fri . name ( ) ) ; //定义时的序号 System . out . println ( fri . ordinal ( ) ) ; //String->enum->name() System . out . println ( Weekday . valueOf ( "SUN" ) . name ( ) ) ; } } 来源: CSDN 作者: weixin_45215505 链接: https://blog.csdn.net/weixin_45215505/article

Java Enum 枚举

会有一股神秘感。 提交于 2020-03-01 19:02:24
目录 Enum(枚举,enumeration) 1. 常用方法 2. 创建枚举 3. 遍历 4. Java 实例 Enum(枚举,enumeration) Enum 是 JDK1.5 新引入的特性,存放在 java.lang 包中; Enum 允许用常量来表示特定的数据片段,而且全部以安全的形式来表示; 详见: Class Enum<E extends Enum> ; 1. 常用方法 类型 方法 说明 int compareTo(E o) 比较此枚举常量与指定相邻对象的顺序,如果在指定对象前面返回-1,如果在指定对象后面返回1,其他情况返回0 Class < E > getDeclaringClass() 返回次枚举常量的枚举累心个相对应的 Class 对象 String name() 返回次枚举常量的名称 int ordinal() 返回枚举常量的序数 String toString() 返回此枚举常量的字符串,它包含在枚举声明中 <T extends Enum< T>> T valueOf(Class< T> enumType, String name) 返回带指定名称的指定枚举类型的枚举常量 2. 创建枚举 enum 类是抽象类,其构造方法是私有方法,故不能创建对象,也不能直接调用 Enum(String name, int ordinal) 方法; 以下方法其实上调用了7次

动手动脑及课后实验性作业

人盡茶涼 提交于 2020-03-01 07:22:51
1. 第一个动手动脑: package test2; public class EnumTest { public static void main(String[] args) { // TODO 自动生成的方法存根 Size s=Size. SMALL ; Size t=Size. LARGE ; //s和t引用同一个对象? System. out .println(s==t);// //是原始数据类型吗? System. out .println(s.getClass().isPrimitive()); //从字符串中转换 Size u=Size. valueOf ("SMALL"); System. out .println(s==u); //true //列出它的所有值 for (Size value:Size. values ()){ System. out .println(value); } } } enum Size { SMALL , MEDIUM , LARGE }; 枚举类型是引用类型不属于原始数据类型,它的每个具体值都引用到一个特定的对象,相同的值则引用同一个对象。 S=Size.SMALL,t=Size.LARGEs和t引用的不是同一个值所以就不是同一个对象,所以输出false System.out.println(s==t);属于枚举类型