引出
你有没有想过既然有了if elseif, 为什么还要设计一个switch case的语法出来呢?...switch case仅支持数字和字符串相等的判断, 甚至在 C 语言中只支持数字相等(其实其他语言也只支持数字, 随便写个 java 反编译一下就会发现, 它将一个switch case转成了两个,...但是为了随机访问, 这里生成了一个中间数组来保存地址, 空间换时间.
总结
那么, 设想一下, 在最开始的语言设计时, 为什么要有switch case这种空间换时间的做法呢?...别说, 我试了几种比较流行的语言, 发现Python就不支持, 哈哈, 用了这么久Python还是突然发现它不支持switch case, 由此可见, switch case我用的比较少....最后, 其实我就是好奇有了if else为什么还要设计个switch出来, 结果找着找着还真挺有意思的, switch的底层实现居然是数组的随机访问, 果然, 就不能想, 全是学问.