枚举类型的基本用法(动手动脑)

仔细阅读示例: EnumTest.java,运行它,分析运行结果?

代码如下:

`public class EnumTest {

复制代码
public static void main(String[] args) {
	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};分析及结果如下: enum Size{SMALL,MEDIUM,LARGE};此段代码定义了Size枚举;Size s=Size.SMALL;

Size t=Size.LARGE;创建Size变量s,t;//s和t引用同一个对象?

System.out.println(st); 比较变量s,t 结果:false 说明s和t引用的不是同一个对象//是原始数据类型吗?
System.out.println(s.getClass().isPrimitive());调用**Class**中的isPrimitive()方法判断枚举变量是否为原始数据类型。 结果:false 说明枚举变量不属于原始数据类型。 **补充:原始数据类型:指的是直接存储基本数据的数据类型(如:int,double),它们有固定的字节数,并且不是对象。**//从字符串中转换
Size u=Size.valueOf("SMALL");
System.out.println(su); //true此段代码根据枚举类型中的valueOf方法将字符串转换为枚举变量 结果:false 通过字符串转换得到的同值枚举变量与原创建的枚举变量是相同的。//列出它的所有值

for(Size value:Size.values()){

System.out.println(value);

}`

结果如下:

SMALL

MEDIUM

LARGE

整段代码运行结果:

你能得到什么结论?你掌握了枚举类型的基本用法了吗?

结论一:枚举变量有其固定的值;

结论二:枚举类型不是原始数据类型

结论三:valueOf方法可以创建枚举变量

结论四:values方法可以遍历枚举类型

相关推荐
蓝斯4973 小时前
[原创]《C#高级GDI+实战:从零开发一个流程图》第章:增加贝塞尔曲线,上、下、左、右连接点
java·c#·流程图
前端工作日常3 小时前
我学习到的Java 的 Service 分层:itf 和 impl 到底是什么?
java·后端
都叫我大帅哥4 小时前
Spring @Transactional 注解完全指南
java·spring
Java成神之路-4 小时前
G1 垃圾回收器 :SATB + TAMS核心机制深度解析
java·jvm
前端工作日常4 小时前
我学习到的JIT即时编译与机器码缓存失效
java·后端
带刺的坐椅5 小时前
Solon 的 10 种 HTTP 服务器:改一行依赖,换一个引擎
java·solon·jetty·undertow·mcp-server·htttp
xcLeigh5 小时前
Go入门:变量声明的五种方式详解
java·开发语言·golang
AI大模型-小华6 小时前
Codex 三方充值快速入门指南
java·前端·数据库·chatgpt·ai编程·codex·chatgpt pro
Mark_ZP6 小时前
【锁1】Synchronized vs ReentrantLock区别
java
立心者07 小时前
SpringBoot中使用TOTP实现MFA(多因素认证)
java·spring boot·后端