判断语句switch - case 和if - else
2016-08-25 11:41
417 查看
IOS学习第5天
switch-case结构
执行步骤switch后面的小括弧中可以写一个表达式、变量、常量
1.先计算switch后面的表达式的结果
2.从上到下的将这个结果和每一个case后面的值进行相等比较判断
3.只要有1个相等,那么久执行其中的代码,执行瓦尼后,就结束整个switch结构
4.如果不相等,再判断下一个case的值
5.如果所有的case后面的值和表达式的结果都不相等,就执行default中的代码
case的穿透
每一个case块后面的break在语法上是可以不屑的
break的意思:代表立即结束整个switch-case结构,如果case快中没有break:那么就会直接穿透到下一个case中执行代码,知道遇到break才会结束switch结构,或者执行完
使用switch的注意
1.switch后面的表达式任意类型都是可以的,出了实型
* 2.switch后面的表达式的结果出了小数,其他都是可以的,是小数就报错.原因:鱿鱼switch结构的本质是对于case后面的选项进行等值比较,浮点数在内存中实际上是一个无限接近的数,所以无法进行完全的等值比较 *
3.case快下面可以写任意行代码,只要符合你的逻辑,如果case快中要声明变量,那么这个case快就必须要使用大括号
4.case快可以有任意个,根据个人的逻辑来.default可以省略,如果省略就没有默认执行代码了
* switch-case与if结构比较,switch-case结构更善于处理整数的等值判断,但是不善于处理和范围相关的 *
if-else-if结构
需要按照顺序判断多个条件,只要一个成立,就要执行对应的事情,后面的就不需要再判断了if缺点:只能在条件满足的时候执行一段指定的代码,条件不满足的时候就无法执行另外的代码了
*
if-else缺点:只能判断一个条件
if-else注意点:
*1.不要在else附近的括号的外面写代码,就不是if-else结构了
2.if-else结构两个大括号里面的代码不会同时执行,也不会都不执行,根本
根本原因:if后面的判断是一个条件宝大师(比较表达式/逻辑表达式),肯定是有结果的,要不是真要不是假,肯定时有几个结果的,所以if-else结构的两个花括号必然有一个会执行
if-else-if注意点
1.只要前面的条件成立,就会执行对应的代码,执行完毕之后,立即结束这个结构,哪怕后面的条件是成立的,也不会执行
2.如果判断了后面的条件,那么就说明前面的条件是不成立的,所以后面的条件中不需要特别的,写前面的条件的不成立
3.判断的顺序最好不要乱,如果你要乱写,那么条件就要完成一些,但是一般情况下,我们从上到到下,条件的范围逐步缩小
4.else可以省略,如果省略,那么久没有默认执行代码了
5.else if的个数可以任意,根据你的具体情况来,有多少个条件就判断多少个
三目表达式
条件表达式 ? 值1 : 值2;如果条件表达式成立,那么这个三元表达式的结果就是值1,否则就是指2
如何产生一个随机数
生成一个0到N之间的随机数int number = arc4random_uniform(10); int number = arc4random % 10;;
相关文章推荐
- 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。
- 求1+2+…+n 要求不能使用 乘 除 法、for、while、if、else、switch、case等关键字以及条件判断语句
- 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)
- PHP 不用求1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句(A?B:C)
- 求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)
- Interview----求 1+2+...+n, 不能用乘除法、for、while if、else、switch、case 等关键字以及条件判断语句 (A?B:C)
- 求1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句
- Interview----求 1+2+...+n, 不能用乘除法、for、while if、else、switch、case 等关键字以及条件判断语句 (A?B:C)
- C/C++学习(一)题目:求1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句(A?B:C)。
- C语言奇思妙想:求1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case 等关键字以及条件判断语句(A?B:C)
- 求1+2+…+n, 要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句(A?B:C)。
- 题目:求1+2+…+n, 要求不能使用乘除法、for、while、if、else、switch、case 等关键字以及条件判断语句
- 剑指Offer(Java版): 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。
- 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。Java实现
- 求1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句(A?B:C)
- 【练习】题目:求1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case 等关键字以及条件判断语句
- 求1+2+。。。+n,不用乘除,for、while、if、else、switch、case等关键字及条件判断语句
- 题目:求1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句(A?B:C)。
- 求1+2+3+...+n,要求不能使用乘除法,for,while,if,else,switch,case等关键字以及条件判断语句
- 实现1+2+3...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句(A?B:C)