美文网首页
C# 中Switch、If 性能对比

C# 中Switch、If 性能对比

作者: 在夢里 | 来源:发表于2018-12-27 15:16 被阅读0次

switch...case:会生成一份大小(表项数)为最大case常量+1的跳表,程序首先判断switch变量是否大于最大case 常量,若大于,则跳到default分支处理;否则取得索引号为switch变量大小的跳表项的地址,程序接着跳到此地址执行,到此完成了分支的跳转。

这就相当于以空间换取时间上的效率,不过随着存储硬件的发展,这一做法往往被考虑。貌似有点类似于字典--如果要比较的分支很多,用Switch Case 速度还是比较好的

If else :如我们所见,就是一个个遍历需要查找的范围,直到命中条件。如果比较的范围很大,分支很少用If else 也是很灵活的

相关文章

  • C# 中Switch、If 性能对比

    switch...case:会生成一份大小(表项数)为最大case常量+1的跳表,程序首先判断switch变量是否...

  • c# 学习笔记3

    条件判断 C# 中 switch 语句的语法: switch 语句必须遵循下面的规则: switch 语句中的 e...

  • js2-switch语句 for循环 break和continu

    switch语句 执行到break就结束switch语句 执行过程switch语句根据传入的值进行对比, 匹配ca...

  • C#程序流

    C#程序流 1.顺序结构 2.分支结构if,if......else,if......else if;switch...

  • Swift简介(二)

    在学习Swift的过程中,加入与OC的对比,这样更好理解,记忆. 1.0 if和switch分支: --if: /...

  • Unity中Lua使用的几个原则

    性能相关: lua中尽量少长期保存C#的对象,如果不可避免建议尽量采用保存lua迭代对象,在传送给C#时再临时构造...

  • C# switch 语句

    一个switch语句允许测试一个变量等于多个值时的情况。每个值称为一个 case,且被测试的变量会对每个switc...

  • 一些东西

    1.List方法添加 2.if..else..和switch效率对比 switch效率是if..else..的十倍...

  • C# 语句控制

    C# 语句控制 1 选择语句 1.1 if语句 1.2 switch语句 2 迭代语句 2.1 while语句 2...

  • C#中数组、集合(ArrayList)、泛型集合List

    C#中数组、集合(ArrayList)、泛型集合List、字典(dictionary)全面对比 为什么把这4个东西...

网友评论

      本文标题:C# 中Switch、If 性能对比

      本文链接:https://www.haomeiwen.com/subject/wfmrlqtx.html