java如何替换switch
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,这篇文章主要介绍了java如何替换switch,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。替换switch关键字 switch 语句
千家信息网最后更新 2025年02月02日java如何替换switch
这篇文章主要介绍了java如何替换switch,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
替换switch
关键字 switch 语句用于多条件判断, switch 语句的功能类似于 if-else 语句,两者性能也差不多。因此,不能说 switch 语句会降低系统的性能。但是,在绝大部分情况下,switch 语句还是有性能提升空间的。
来看下面的例子:
public static void main(String[] args) { long start = System.currentTimeMillis(); int re = 0; for (int i = 0;i<1000000;i++){ re = switchInt(i); System.out.println(re); } System.out.println(System.currentTimeMillis() - start+"毫秒");//17860 } public static int switchInt(int z){ int i = z+1; switch (i){ case 1:return 3; case 2:return 6; case 3:return 7; case 4:return 8; case 5:return 10; case 6:return 16; case 7:return 18; case 8:return 44; default:return -1; } }
就分支逻辑而言,这种 switch 模式的性能并不差。但是如果换一种新的思路替代switch,实现相同的程序功能,性能就能有很大的提升空间。
public static void main(String[] args) { long start = System.currentTimeMillis(); int re = 0; int[] sw = new int[]{0,3,6,7,8,10,16,18,44}; for (int i = 0;i<1000000;i++){ re = arrayInt(sw,i); System.out.println(re); } System.out.println(System.currentTimeMillis() - start+"毫秒");//12590 } public static int arrayInt( int[] sw,int z){ int i = z+1; if (i>7 || i<1){ return -1; }else { return sw[i]; } }
以上代码使用全新的思路,使用一个连续的数组代替了 switch 语句。因为对数据的随机访问是非常快的,至少好于 switch 的分支判断。通过实验,使用switch的语句耗时17860ms,使用数组的实现只耗时12590ms,提升了5s多。在软件开发中,换一种思路可能会取得更好的效果,比如使用数组替代switch语句就是就是一个很好的例子。
感谢你能够认真阅读完这篇文章,希望小编分享的"java如何替换switch"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!
语句
性能
篇文章
思路
数组
例子
分支
功能
就是
空间
很大
相同
差不多
代码
价值
全新
关键
关键字
兴趣
同时
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
怎么学软件开发就业
数据库超大怎么办
成都学校网络安全等级保护
第20届网络安全周
数据库原理及应用大概讲了什么
天下三再战今朝服务器没玄修么
广州oa软件开发联系方式
中国共和国网络安全什么成立
微软 数据库 操作技术
山东春考网络技术单招
自由互联网科技有限公司商标
股票交易软件开发难度
并不断完善网络安全战略
三级数据库和三级网络安全
将数据库中
随机拿到数据库的数据
软件开发公司要经常加班吗
网络安全警务技术基础知识
安徽网络技术代理商
金蝶软件开发部主任王阳
三国杀ol手游只有一个服务器吗
发展网络安全技术图片
dtcc 数据库技术大会
十种数据库
数据库表格信息单个获取
软件开发加密流程五个阶段
新玩客网络技术公司
1u服务器散热
管家婆 t9 数据库减肥
商城商家数据库设计