swift4.1 系统学习八
// // main.swift // swift08 // // Created by iOS on 2018/9/28. // Copyright © 2018年 weiman. All rights reserved. // import Foundation //swift学习笔记8 /* 1. for-in 循环 swift中使用for-in循环还是很频繁的。在swift中,没有OC中的for(,,){}循环了,遍历数组、字典、 区间、字符串等都是使用for-in循环。 */ do { // 1.遍历数组 let names = ["小明", "Ann", "小蓝", "张三"] for name in names { print("Hello, \(name)") } //2.遍历字典 let numbersOfLegs = ["蜘蛛": 8, "螃蟹": 8, "猫咪": 4, "蚂蚁": 6] for (name, legs) in numbersOfLegs { print("\(name) have \(legs) legs") } //3.遍历范围 for index in 1...5 { print("\(index) * 5 = \(index * 5)") } /* 注意: 上面例子中的循环变量是不需要显式声明的,它是一个每次循环开始时被自动赋值的常量。 如果不需要它,可以使用 _ 代替。 */ } // 2. while循环 /* swift中的while循环与C语言类似,语法为: while 表达式 { ... } 注意: 1.这里的表达式可以省略小括号 2.花括号不能省略,哪怕只有一条语句 */ do { // 计算1到10000的求和 var sum = 0 var num = 1 while num <= 10000 { sum += num num += 1 } print("sum = \(sum), num = \(num)") //计算10的阶乘 num = 10 var f = 1 while num > 1 { f = f * num num -= 1 } print("f = \(f)") } /* break语句:跳出当前循环体; continue语句: 跳过当前这一次的循环,继续下一次循环。 */ do { var i = 3 while i > 0 { var j = 4 while j > 0 { print("i = \(i), j = \(j)") j -= 1 if i + j < 3 { break } } i -= 1 if i == 2 { continue } print("外层 i = \(i)") } /* i = 3, j = 4 i = 3, j = 3 i = 3, j = 2 i = 3, j = 1 i = 2, j = 4 i = 2, j = 3 i = 2, j = 2 i = 2, j = 1 外层 i = 1 i = 1, j = 4 i = 1, j = 3 i = 1, j = 2 外层 i = 0 */ } //3. repeat-while循环 /* 语法: repeat { ... } while 表达式 执行逻辑: 先执行repeat语句块中的语句,然后判断表达式是否为真,如果为真就继续执行repeat语句块 的语句,如果为假,就停止循环,继续执行while下面的语句。 */ do { // 计算1到10的和 var sum = 0 var num = 10 repeat { sum += num num -= 1 } while num > 0 print("sum = \(sum), num = \(num)") // 10的阶乘 var jc = 1 var n = 10 repeat { jc *= n n -= 1 print("n = \(n), jc = \(jc)") } while n > 0 print("10! = \(jc)") } // 4. 标签语句 /* 标签语句是做什么的? 可以方便地跳出指定的do语句块、if语句块、switch语句块、for-in语句块、 while语句块或者repeat语句块。 如何跳出? 当我们需要跳出指定的语句块的时候,我们可以在语句块之前加上标签,然后通过 break label 语句跳出。 在循环体中,标签也可以与continue一起使用跳过某个指定循环的当前迭代,直接执行下一次迭代。 */ do { var a = 100 label: do { label2: if a > 50 { break label } else { label3:if a < 50 { break label3 } else { break label2 } } break label } } /* 个人建议: 标签语句会破坏代码的可读性,建议尽量少的使用,不然时间一长,自己都不知道这块为什么要这样跳来跳去的 */
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
手机记事本软件敬业签如何添加定时提醒
敬业签是一款免费的跨平台多端云同步,集备忘、记录、提醒等功能于一体的电脑桌面记事本软件和手机桌面记事本软件。支持Android、IOS、Windows系统、iPad和web网页版,苹果Mac端可先使用web网页版。 它的提醒功能有定时提醒、按天/周/月/季/年重复提醒、农历提醒等。不管是日常生活还是忙碌工作,做起事情来就容易忘事,所以提醒功能必不可少。 今天小编就来给大家介绍一下手机记事本软件敬业签如何添加定时提醒。 1.打开并登录手机版敬业签,左划需要添加定时提醒的内容。 点击“更多”进入修改界面。(直接点击要填加提醒的内容也可以进入修改界面) 3.点击打开“指定时间提醒我”。 4.修改好提醒时间,点击下面的“确定”或者右上角的“保存”即可。 学会了吗?现在就来试试在手机版敬业签上添加定时提醒吧。
- 下一篇
Java Web项目,Android和微信小程序的初始页面配置
Java Web项目 我们在Eclipse里开了Java Web项目之后,Run As Tomcat或者Apache服务器,本地运行,如果直接用http://localhost:8080访问项目,会发现浏览器会打开一个默认的页面。 这个页面是在什么地方配置的呢? 每个Java Web工程的目录下面,都有一个名为WEB-INF的目录,里面包含一个配置文件web.xml。Web项目的默认页面就定义在里面的welcome-file-list节点里。 Android项目 我们知道一个Android项目里可以定义不同的Activity,那么Android应用启动后看到的初始页面对应的Activity,定义在Android项目的AndroidManifest.xml配置文件里,属性为android:name。看下面的例子: package="com.jerry.android4" android:versionCode="1" android:versionName="1.0" > android:minSdkVersion="8" android:targetSdkVersion="19"...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS8编译安装MySQL8.0.19
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Hadoop3单机部署,实现最简伪集群
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果