当前位置: 首页 > ds >正文

第八节第三部分:认识枚举、枚举的作用和应用场景

认识枚举

枚举的概述

枚举的概述

枚举的特点

枚举的特点

枚举的应用场景

应用场景

代码:

代码一:认识枚举

A(枚举)

package com.d6_enum;public enum A {//注意:枚举类的第一行必须罗列的是枚举对象的名字X,Y,Z;private String name;public String getName() {return name;}public void setName(String name) {this.name = name;}
}

B(抽象枚举)

package com.d6_enum;
//拓展:抽象枚举
public enum B {X(){@Overridepublic void go() {}},Y("张三") {@Overridepublic void go() {System.out.println(getName()+"再跑··");}};public abstract void go();private String name;B(String name) {this.name = name;}B() {}public String getName() {return name;}public void setName(String name) {this.name = name;}
}

Test(测试类,主程序)

package com.d6_enum;public class Test {public static void main(String[] args) {A a1 = A.X;System.out.println(a1);//1.枚举类的构造器是私有的,不能对外创建对象//A a2 = new A();//2.枚举类的第一行都是常量,记住的是枚举类的对象A a2 = A.Y;//3.枚举类提供一个一些额外的APIA[] as = a1.values();//拿到全部对象A a3 = A.valueOf("Z");System.out.println(a3.name());//ZSystem.out.println(a3.ordinal());//索引System.out.println("----------------------");B b1 = B.Y;b1.go();}
}

结果1

代码二:枚举的应用场景

Constant1(用以存放信息标志的常量的类)

package com.d7_enum2;public class Constant1 {public static final int  BOY = 1;public static final int  GIRL = 2;
}

Constant2(用以实现信息标志的枚举)

package com.d7_enum2;public enum Constant2 {BOY,GIRL;
}

Test(测试类,主程序)

package com.d7_enum2;public class Test {public static void main(String[] args) {//目标:掌握枚举的应用场景,做信息标志和分类//对比:常量做信息标志和枚举做信息标志//1.常量做信息标志check(Constant1.BOY);//2.枚举做信息标志check2(Constant2.BOY);}//1.1常量做信息标志public static void check(int sex){switch (sex){case 0:System.out.println("展示一些美女图,游戏信息");break;case 1:System.out.println("展示一些帅哥图,土豪信息");break;}}//2.1枚举做信息标志public static void check2(Constant2 constant2){switch (constant2){case BOY:System.out.println("展示一些美女图,游戏信息");break;case GIRL:System.out.println("展示一些帅哥图,土豪信息");break;}}}

结果2

http://www.xdnf.cn/news/6813.html

相关文章:

  • DeepSearch:WebThinker开启AI搜索研究新纪元!
  • 游戏站的几种形式
  • redis数据结构-11(了解 Redis 持久性选项:RDB 和 AOF)
  • STM32H743IIT6_ADC采集误差分析与ADC_DMA
  • 【论信息系统项目的整合管理】
  • leetcode 2900. 最长相邻不相等子序列 I 简单
  • 【LeetCode 热题 100】搜索插入位置 / 搜索旋转排序数组 / 寻找旋转排序数组中的最小值
  • 基于javaweb的SpringBoot驾校预约学习系统设计与实现(源码+文档+部署讲解)
  • Jenkins 安装与配置指南
  • A12 乐队指挥更懂管理
  • STM32 定时器主从模式配置解析
  • C++:单例模式
  • Day 22 训练
  • 01-多线程案例-线程安全问题
  • n8n 中文系列教程_23. 【实战篇】如何零成本搭建Deep Research类AI工具
  • MySQL8新特性
  • 【Vite】前端开发服务器的配置
  • 【Dv3Admin】插件 dv3admin_chatgpt 集成大语言模型智能模块
  • 深入理解 Git 分支操作的底层原理
  • 基于协同过滤的文学推荐系统设计【源码+文档+部署】
  • 机器学习第十五讲:决策树全面讲解:像玩“20个问题“游戏猜身份[特殊字符]
  • 逻辑复制环境删除订阅报错 replication slot does not exist
  • 源码与二进制包区别
  • foreach中使用await的问题
  • 【AI】用Dify实现一个模拟面试的功能
  • SD2351核心板:开启AI视觉普惠化新时代
  • AI 算力革命:算力的未来趋势
  • idea中Lombok失效的解决方案
  • 第31节:迁移学习概念
  • 2025年PMP 学习十五 第10章 项目资源管理