switch 指针数组 为什么比 if语句 效率?

switch 指针数组 为什么比 if语句 效率?

switch 指针数组 为什么比 if语句 效率?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
Tender10 2017-06-26 10:18:17

你说的对。

Tender10 2017-06-26 09:58:39

 一般情况下, 当switch分支小于等于3时, 生成的代码和if else几乎没有太大差别,  如果分支在4个以上, 编译器则会对代码进行算法上的优化。代码会生成一个指针数组, 这个数组中一共有n(n表示switch中要判断多少个元素)个元素, 每个元素分别指向不同case所对应代码起始处的地址。较少的分支用if else 和switch都无所谓,   当分支较多,而又比较连续, switch是不二之选。

  • 提问者 天才杰 #1
    分支会优先选择算法给出的几个选项,对吗?
    2017-06-26 10:09:26
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
iOS入门:基础语法与常用控件
  • 参与学习       1337    人
  • 提交作业       712    份
  • 解答问题       1878    个

很多人都在疑问没有基础该怎么学习iOS开发?不用担心,本路径采用游戏关卡式的教学模式,并且以经典OC与最新Swift双重结合的教学内容,帮助大家快速掌握两种iOS开发语言基础,去掉“零”标签。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师