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

业务员自己做网站关键词排名软件官网

业务员自己做网站,关键词排名软件官网,广州公司制作网站,企业文化包括哪六个在 switch 语句中使用表达式比较时,编译器会生成一个查找表,其中包含所有表达式的值和对应的 case 标签。因此,与使用常量或字面量比较相比,使用表达式比较可能会略微降低性能。 只有当 switch 语句中的所有 case 标签都使用常量或…

在 switch 语句中使用表达式比较时,编译器会生成一个查找表,其中包含所有表达式的值和对应的 case 标签。因此,与使用常量或字面量比较相比,使用表达式比较可能会略微降低性能。

只有当 switch 语句中的所有 case 标签都使用常量或字面量时,编译器才会生成查找表。如果 switch 语句中包含任何表达式,编译器将使用不同的机制来评估这些表达式,这与 if 语句类似。

因为 switch 语句在编译时可以优化为查找表,而 if 语句则需要在运行时逐个评估每个条件。查找表可以提供更快的查找速度,尤其是在 case 标签较多时。所以,在相同的机器、系统和比较条件下,switch 语句的性能通常大于或等于 if 语句

下面简单测试一下:

选择相同的6个分支,在循环中来判断。

            Stopwatch sw = new Stopwatch();int iterations = 300000000;int value = 3;for (int j = 0; j < 6; j++){Console.WriteLine($"第{j + 1}次比较-----------");//使用 if 语句进行测试sw.Start();for (int i = 0; i < iterations; i++){if (value == 1) { }else if (value == 2) { }else if (value == 3) { }else if (value == 4) { }else if (value == 5) { }else if (value == 6) { }}sw.Stop();Console.WriteLine("If 语句运行时间:{0} 毫秒", sw.ElapsedMilliseconds);//使用 switch 语句进行测试sw.Restart();for (int i = 0; i < iterations; i++){switch (value){case 1: break;case 2: break;case 3: break;case 4: break;case 5: break;case 6: break;}}sw.Stop();Console.WriteLine("Switch 语句运行时间:{0} 毫秒", sw.ElapsedMilliseconds);}

结果:

结论:字面量或常量时,switch会优于if.

修改上面全面改为表达式:

            Stopwatch sw = new Stopwatch();int iterations = 300000000;int value = 3;for (int j = 0; j < 6; j++){Console.WriteLine($"第{j + 1}次比较-----------");//使用 if 语句进行测试sw.Start();for (int i = 0; i < iterations; i++){if (value < 1) { }else if (value < 2) { }else if (value < 3) { }else if (value < 4) { }else if (value < 5) { }else if (value < 6) { }}sw.Stop();Console.WriteLine("If 语句运行时间:{0} 毫秒", sw.ElapsedMilliseconds);//使用 switch 语句进行测试sw.Restart();for (int i = 0; i < iterations; i++){switch (value){case < 1: break;case < 2: break;case < 3: break;case < 4: break;case < 5: break;case < 6: break;}}sw.Stop();Console.WriteLine("Switch 语句运行时间:{0} 毫秒", sw.ElapsedMilliseconds);}

结果:

结论:看来简单的常量表达式也会有优化,效率也会提升。

缺点:switch不能用于其它复杂的表达式,switch 语句中的 case 标签必须是常量表达式。不能包含变量或其他会改变其值的内容。

但大多数情况下,都要用到复杂的表达式和变量表达式,所以一般用IF而不能用Switch。

switch因为里面会根据case生成查找表,所以一般查找表各case是唯一的,在输入时就会检查,如果case条件重复或矛盾,就会有红色提示。但if则不会,那怕条件重复也不会提示.

http://www.15wanjia.com/news/52017.html

相关文章:

  • 太原网站建设工作室志鸿优化网
  • 网站整体架构搜狗指数
  • 网络推广的优化方法邵阳seo优化
  • 如何做收费网站站长工具查询入口
  • 网站建设赚钱美国疫情最新情况
  • 做字典网站开发和生活app下载安装最新版
  • 手机如何建设网站seo西安
  • 在哪家公司建设网站好珠海seo排名收费
  • js做音乐网站济南seo排行榜
  • 怎么制作一款自己的appseo网络推广公司
  • 新浪云怎么做淘宝客网站公司seo是什么级别
  • wap网页游戏轮回olseo综合查询工具可以查看哪些数据
  • 选择网站做友情链接的标准一般是天门seo
  • 注册域名邮箱怎么弄seo搜索引擎是什么
  • html网站支付链接怎么做的经典软文案例或软文案例
  • 网站管理后台源码nba最新排名东西部
  • 网站好处杭州今天查出多少阳性
  • 做的网站上更改内容改怎么办seo兼职怎么收费
  • 上饶专业做网站建设百度问答一天能赚100块吗
  • 注册公司登陆哪个网站引流推广广告怎么写
  • 廊坊建设网站企业5年网站seo优化公司
  • 做任务赚q红包的网站搜索引擎技术优化
  • 好的网站有哪些万能推广app
  • 个人工作室和公司区别福州seo公司
  • php网站开发的成功经历营销推广投放平台
  • 外贸公司有必要建设网站吗学电商运营的培训机构
  • 为什么做网站能赚钱中国职业技能培训中心官网
  • 免费建站系统怎么用宁波seo搜索引擎优化公司
  • 深圳市网站建设哪家好专业拓客公司联系方式
  • 动态网站下载优化推广网站怎么做