java switch和枚举
java switch和枚举
switch case用法:
先来一道面试题:
public static void test(){ int i = 11; switch (i){ case 5:case 11:case 12: System.out.println("是个5"); case 10: System.out.println("是个10"); break; case 4: System.out.println("是个4"); break; default: System.out.println("默认值"); break; } }
结果是:
是个5
是个10
结论:最终执行的方法体是什么呢?匹配上的case的冒号开始,一直到break为止,之间的case条件忽略,语句会执行。
参考链接:https://blog.csdn.net/weixin_39800144/article/details/80943257
枚举:
public enum RechargeActiveType { /**0*/ Default, PerFirstRech, ContinueRech, TotalRchg, GiftBag, }
下面的使用方式会报错:因为case后跟的是常量表达式
知道枚举的值,可先获取枚举值对应的枚举,再使用switch,
根据枚举的值获取对应的枚举:
RechargeActiveType rechargeActiveType = RechargeActiveType.values()[menuValue];
使用switch(枚举) case 枚举常量:
switch (rechargeActiveType) { case PerFirstRech: break; case ContinueRech: break; case TotalRchg: break; case GiftBag: break; default: break; }
源码,是痛苦的,又是快乐的,如果没有这痛苦,也就没有了这快乐!
本文作者:好Wu赖
本文链接:https://www.cnblogs.com/erlongxizhu-03/p/13582411.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现