Swift 程序流程控制
Swift采用类同c语言的流程控制语句,if, for, for-in, while, do-while , switch, break, continue .Swift语言的Switch语句自动添加了break效果,这样你可以不用没个case后面再写break.同c语言不同,swift语言的if for while 等,没有括号来括表达式
1: if 语句。if语句只对逻辑值检测。这里不同于c语言的if语句是检测是否 非0.
var bFlag:Bool = true
if bFlag {
println("\(bFlag)")
}
2: for语句,for语句的用法类似于c语言for语句
var index:Int =
for index; index < ; index++
{
println("\(index)\n")
}
3: for-in语句用于多集合的遍历
for item in .. {
println("\(item) ")
}
如果不使用集合元素可以用 _忽略
var iCount : Int =
let iBase : Int =
for _ in ... {
iCount *= iBase
}
println("\(iCount)")
用for-in 遍历数组
let array = [,,,]
for item in array {
println("\(item) ")
}
for-in 遍历字典
let dic = ["key1":"value1", "key2":"value2", "key3":"value3"]
for (key, value) in dic {
println("key:\(key) value:\(value) \n")
}
4:while循环。while循环判断逻辑值
var bFlag:Bool = true
var iCount:Int =
while bFlag
{
iCount++
if iCount > {
bFlag = false
}
println("\(iCount)\n")
}
5: do-while 。while/ do-while 循环控制流程是和c语言一样的,只是他们的判断是逻辑值而不是c语言那样的 !0 值。
var bFlag:Bool = true
var iCount:Int =
do
{
iCount++
if iCount > {
bFlag = false
}
println("\(iCount)\n")
}while bFlag
6:switch 语句。switch语句必须是完备的语句,defualt语句必须在所有case语句的最后。每个case后switch语句会自动break。case 块中不允许空语句。一个case条件可以使用范围匹配。同时case条件可以使用元组匹配,而且元组可以用 "_" 表示任何值
let iCount :Int =
switch iCount{
case ...:
println("in")
case ..:
println("out")
default:
println("def")
}
let character: Character = "c"
switch character{
case "a", "b", "c" :
println("xx")
case "d", "e":
println("oo")
default:
println("def")
}
var somePointe = (,)
switch somePointe {
case(, ):
println("0.0")
case(_, ):
println("_, 2")//_匹配 进这句
case(, ):
println("1, 2")//不会进,前面已经bread
default:
println("def") }
Swift 程序流程控制的更多相关文章
- [java学习笔记]java语言基础概述之运算符&程序流程控制&for循环嵌套
一.运算符 算数运算符 +,-,*,/,%,++,-- 1.+,-,*,/ 整数除以整数的结果为舍弃了小数部分的整数. 2.%:取余 %左右都为正数,左边小于右边结果为左边值,如,4%5=4 %左边大 ...
- Java 基础 程序流程控制 (下)
Java 程序流程控制 (下) 此篇单独对循环结构的知识点进行整理: 之前讲到循环结构分为:for循环,while循环,do...while循环三种最基本的循环结构:在JDK1.5以后的版本还提供了f ...
- Java 基础 程序流程控制 (上)
Java程序流程控制 (上) Java程序大体分为三种流程控制结构:顺序结构.分支结构.循环结构 顺序结构 程序由上到下的逐行执行,中间没有任何跳转和判断语句. 示例代码如下: public clas ...
- Java基础之程序流程控制
Java中的程序流程控制 Java中的程序流程分为三种结构:①顺序结构:②分支结构:③循环结构 一.顺序结构 Java中定义成员变量的时候,采用的是前向引用,也就是后面的变量可以引用之前定义好的变量. ...
- 4. Scala程序流程控制
4.1 程序流程控制说明 在程序中,程序运行的流程控制决定程序是如何执行的,是我们必须掌握的,主要有三大流程控制语句,顺序控制,粉质控制,循环控制 温馨提示:Scala语言中控制结构和Java语言中的 ...
- Java基础-程序流程控制第二弹(循环结构)
Java基础-程序流程控制第二弹(循环结构) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 流程控制有三种基本结构:顺序结构,选择结构和循环结构.一个脚本就是顺序结构执行的,选择结 ...
- Java基础-程序流程控制第一弹(分支结构/选择结构)
Java基础-程序流程控制第一弹(分支结构/选择结构) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.if语句 1>.if语句的第一种格式 if(条件表达式){ 语句体: ...
- Java 基础入门随笔(4) JavaSE版——程序流程控制
上一节对于运算符有了大致的了解,这一节针对程序流程控制进行复习!程序流程控制包括顺序结构.判断结构(if).选择结构(switch).循环结构. 1.判断结构 ①if语句的第一种格式: ...
- Java程序流程控制
程序流程控制有 选择,循环,以及跳转结构 选择结构中无非就是 If 和 switch语句我两种都做了一些小案例 1. 利用Scanner库来获得控制台用户输入的数字与代码中定义的变量比较 packag ...
随机推荐
- [MSSQL]SQL疑难杂症实战记录-巧妙利用PARTITION分组排名递增特性解决合并连续相同数据行
问题提出 先造一些测试数据以说明题目: DECLARE @TestData TABLE(ID INT,Col1 VARCHAR(20),Col2 VARCHAR(20)) INSERT INTO @T ...
- linux php环境搭建以及magento安装教程
听朋友用magento在搭建电商系统,我好奇.遂自己下载了一个包部署了一套. 主机采用linux center os6.5,安装程序非常顺利,部署一套大概费时一个小时左右. ########### ...
- QWidget 实现 打破布局 或者 当前窗体内的 弹窗 (借助伪造实现)
but = QtWidgets.QToolButton(Dialog2) but.setText('**') but.setAutoRaise(True) layout.addWidget(but) ...
- 开发ERP软件应该遵守的22条规则
总结一下做管理软件,有哪些项是经过检验的条款,必须遵守的. 界面篇 1 要保存用户的偏号(profile/favourite). ASP.NET 2.0引入此功能,当用户修改默认的控件的属性时,框架 ...
- android: 实现跨程序数据共享
简单起见,我们还是在上一章中 DatabaseTest 项目的基础上继续开发,通过内容提供器 来给它加入外部访问接口. 打开 DatabaseTest 项目,首先将 MyDatabaseHelper ...
- UIButton的titleEdgeInsets和imageEdgeInsets属性
转:http://www.cnblogs.com/huichun/p/3419596.html uiButton控件上自带了一个uiLabel类型的子控件和一个uiImageView类型的子控件,如果 ...
- SSH和SFTP简介
传统FTP 在传输机制和实现原理上是没有考虑安全机制的,因为它们在网络上用明文传送数据.用户帐号和用户口令,别有用心的人非常容易地就可以截获这些数据.用户帐 号和用户口令.而且,这些网络服务程序容易受 ...
- JAVA B/S系统实现客户端屏幕截图,Java版的QQ截图
简介:本方法首先需要抓到屏幕的整个图象,将图象显示在一个JFrame中,再将JFrame全屏显示,这样就模拟出了一个桌面,Java也就可以获得鼠标的作用区域从而实现桌面中的小范围截屏.Java实现QQ ...
- android 图片占用内存与什么有关
android 图片占用内存与什么有关 原文链接:http://blog.csdn.net/zjl5211314/article/details/7041813 在开发手机应用的时候,内存是有限的,那 ...
- MySQL 错误
(1) Ignoring query to other database D:\Program Files\MySQL\MySQL Server 5.6\bin>mysql -Uroot 原因是 ...