当前位置:网站首页>if/else或switch替换为Enum
if/else或switch替换为Enum
2022-08-03 18:54:00 【帅宇Yeah~】
if/else或switch替换为Enum
if else 使用
/**
* 调用
* @param args
*/
public static void main(String[] args) {
int type = 8;
eatFood(type);
}
/**
* 使用if判断
* @param type
*/
public static void eatFood(int type){
if(1 == type){
System.out.println("火锅");
} else if (2 == type) {
System.out.println("烤肉");
} else if (3 == type) {
System.out.println("烤鱼");
}else{
System.out.println("饿着");
}
}
switch 使用
/**
* 调用
* @param args
*/
public static void main(String[] args) {
int type = 8;
eatFood(type);
}
/**
* 使用switch判断
* @param type
*/
public static void eatFood(int type){
switch (type){
case 1:
System.out.println("火锅");
break;
case 2:
System.out.println("烤肉");
break;
case 3:
System.out.println("烤鱼");
break;
default:
System.out.println("饿着");
break;
}
}
================================================
Enum
import java.util.HashMap;
import java.util.Map;
public class TestClass {
private final static Map<Integer, String> map;
static {
map = new HashMap<>();
map.put(1, "TYPE_1");
map.put(2, "TYPE_2");
map.put(3, "TYPE_3");
}
/**
* 调用
* @param args
*/
public static void main(String[] args) {
//map种不存在的key默认为TYPE_4
String type = map.getOrDefault(8,"TYPE_4");
EatEnum.valueOf(type).eatFood();
}
}
/**
* 接口
*/
public interface EatFood {
void eatFood();
}
/**
* 枚举类实现EatFood接口
*/
public enum EatEnum implements EatFood{
TYPE_1(){
@Override
public void eatFood() {
System.out.println("火锅");
}
},
TYPE_2(){
@Override
public void eatFood() {
System.out.println("烤肉");
}
},
TYPE_3(){
@Override
public void eatFood() {
System.out.println("烤鱼");
}
},
TYPE_4(){
@Override
public void eatFood() {
System.out.println("饿着");
}
};
}
边栏推荐
- 使用range-based for循环的注意事项
- idea——同一项目开启多个实例(不同端口)
- PreFixSum前缀和
- 细胞不可渗透的荧光探针 锌离子荧光探针Zinquin 151606-29-0
- 快手通过国际权威信息安全和隐私保护认证,安全能力达到国际领先水平
- OneNote 教程,如何在 OneNote 中设置页面格式?
- Don't look down upon the WebSocket!Long connection, stateful, two-way, full-duplex king is Fried
- Intelligent security contract - delegatecall (2)
- PHP基础笔记-NO.1
- 实现博客营销有哪些技巧
猜你喜欢
不要小看 WebSocket!长连接、有状态、双向、全双工都是王炸技能
常见荧光染料修饰多种基团及其激发和 发射波长数据一览数据
MySQL如何一劳永逸的永久支持输入中文
【Azure 事件中心】使用Azure AD认证方式创建Event Hub Consume Client + 自定义Event Position
WEB 渗透之RCE
online 方式创建索引触发trigger怎么办?
Cobalt Strike (CS) 逆向初探
When does MySQL use table locks and when to use row locks?You should know this
[笔记]机器学习之前言介绍
细胞不可渗透的荧光探针 锌离子荧光探针Zinquin 151606-29-0
随机推荐
excel写入不完全sheet.append方法(openpyxl)
实现博客营销有哪些技巧
智能合约安全——delegatecall (2)
typescript学习笔记
多线程和并发编程(四)
JumpServer开源堡垒机完成龙芯架构兼容性认证
201709-3 CCF jason查询 (满分题解)
POJ 3041 Asteroids(最大匹配数=最小点覆盖)
Online monitoring of UPS power supply and operating environment in the computer room, the solution is here
MySQL 啥时候用表锁,啥时候用行锁?这些你都应该知道吧
微信小程序分享功能
阿里资深架构师钟华曰:中台战略思想与架构实战;含内部实施手册
荧光标记多肽FITC/AMC/FAM/Rhodamine/TAMRA/Cy3/Cy5/Cy7-Peptide
Install porterLB
MySQL如何一劳永逸的永久支持输入中文
阿里资深专家打造从零开始学架构,含阿里内部技术栈PPT、PFD实战
WEB 渗透之RCE
Chrome浏览器开发新截图工具,安全浏览器截图方法
谷歌浏览器安装插件教程步骤,开发用这2个插件工作效率倍增
Arduino实验三:继电器实验