Swift 学习笔记 3-控制流

Swift教程_零基础学习Swift完整实例(二)_swift基础(简单值、控制流、方法和闭包) 三、Swift基础介绍 本章将对Swift做一个简单说明,内容取自《The Swift Programming Language》及http://www.chinaz.com/swift/的中文翻译,并加之自己的理解。 首先swift全局作用域中的代码会被自动当做程序的入口点,所以你也不需要main函数。你同样不需要在每个语句结尾写上分号。而且提供了playground可以在编辑代码实 阅读详情

欢迎加QQ群讨论:157672725

一、条件语句

if语句

1.在if语句中,条件必须是一个布尔表达式【if(0)这样的写法是错的,因为0不是布尔表达式】
2.if( )的括号可写可不写

var score = 100
var totalScore = 0
if score > 100 {
    totalScore += 2
} else {
    totalScore += 1
}
print(totalScore)

3.if和let处理值缺失的情况【处理可选值】

var optionalStr: String? = "opValue"
var greeting = "Hello!"
if let name = optionalName {
    greeting = "Hello, \(name)"
}

结果如图

如果 var optionalStr: String? 则 if的条件将会不成立。

switch语句

1.switch支持任意类型的数据以及各种比较操作——不仅仅是整数以及测试相等
2.swicth必须有default的情况,否则报错
3.case可以多值判断用,隔开 (如 :case “bbb”,”ccc”)
4.声明let可用于匹配某部分固定值的模式
5.switch匹配到子句之后,程序会退出switch语句,并不会继续向下运行,所以不需要在每个子句结尾写break

let strSwitch = "bbb"
switch strSwitch {
case "aaa":
    let str = "aaaaaaaa"
    print(str)
case "bbb", "ccc":
    let str = "bbbbbbbb/ccccccc"
    print(str)
case let x where x.hasSuffix("a"):
    let str = "Is it a spicy \(x)?"
    print(str)
default:
    let str = "default"
    print(str)
}

输出:bbbbbbbb/ccccccc

二、循环语句

for语句

1.使用var声明i来循环

for var i=0;i<4;i++{
    forTest++;
}
print(forTest)
输出: 4

2.可以使用 for in 来遍历

var firstForLoop = 0
for i in 0..<4 {
    firstForLoop += i
}
print(firstForLoop)
输出: 6

print("\n")

var secondForLoop = 0
for var i = 0; i < 4; ++i {
    secondForLoop += i
}
print(secondForLoop)
输出: 6

3…<创建的范围不包含上界,…包含上界

var firstForLoop = 0
for i in 0...4 {
    firstForLoop += i
}
print(firstForLoop)

print("\n")
输出: 10

4.for用于遍历字典【需要两个变量来表示每个键值对】

let interestingNumbers = [
    "Prime": [2, 3, 5, 7, 11, 13],
    "Fibonacci": [1, 1, 2, 3, 5, 8],
    "Square": [1, 4, 9, 16, 25],
]
var largest = 0
for (kind, numbers) in interestingNumbers {
    for number in numbers {
        if number > largest {
            largest = number
        }
    }
}
print(largest)
输出: 25

while语句

  1. 同样的条件部分的括号可不写
var n = 1
while n < 10 {
    n*=2
}
print(n)
输出: 16
10、Swift 控制流详解 本文详细介绍了 Swift 中的控制流语句,包括 if...else 条件判断、guard 语句、switch 多值匹配以及 for-in 循环的使用方法和应用场景。通过示例代码讲解了它们的基本语法、高级用法以及在实际开发中的技巧,如错误处理、可选值绑定、枚举匹配、范围判断和性能优化等。文章还探讨了控制流语句在数组、字典、元组和枚举类型上的实际应用,并提供了流程图和表格对比不同语句的特点,帮助开发者编写高效、可维护的 Swift 代码。 阅读详情

相关推荐

团结引擎+OpenHarmony 2实战篇:从零构建鸿蒙应用开发环境

本文详细介绍了如何从零开始构建鸿蒙应用开发环境,重点讲解了团结引擎与OpenHarmony 2的实战配置步骤。内容包括DevEco Studio安装、OpenHarmony SDK配置、团结引擎集成及项目创建等关键环节,帮助开发者快速搭建高效的开发环境,提升鸿蒙应用开发效率。

weixin_29294395的博客 265

Swift 3.0 学习笔记-4-控制流

Swift 3.0 学习笔记-4-控制流标签(空格分隔): iOS Swift前言: swift3.0 学习笔记主要参考苹果开发者官网The Swift Programming Language (Swift 3.1)教程 以及 Swift 中文网。 更纯粹的阅读的体验请移步至: https://www.zybuluo.com/kakadee/note/726184Swift 30 学习笔记-

KAKADEE BLOG 662

用Spirent Test Center测试交换机Head of Line(HOL)Blocking

测试目的:设备执行拥塞控制,使非阻塞端口不受阻塞端口影响 预设条件:在RFC2889里按以下步骤设置,端口1和端口3同时向端口4发送数据包,端口1向端口2发送数据包 测试步骤:运行设置好的RFC2889 测试结果:所有frame size都显示没有Head of Line(HOL),即非阻塞端口不受阻塞端口所影响 ...

Yuna_的博客 1357

Swift苹果官方教程文档阅读和学习

入门文档 Guide Book:https://docs.swift.org/swift-book/LanguageGuide/TheBasics.html Swift Feature: https://developer.apple.com/swift/ 问题记录 Swift Feature 值类型 And Swift heavily leverages value types, especially for commonly used types like Arrays and Diction

mingC0758的博客 1981

windows10 + wsl2安装docker

一、安装wsl https://docs.microsoft.com/zh-cn/windows/wsl/install-win10 1.1以管理员身份运行powershell 1.2执行如下命令 dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart 1.3重启电脑 1.4 重启电脑后,如果需要安装wsl2, 则安装官方文档继续后续操作,因我...

happytree001的博客 1570

S7-200 Smart 控制运动轴(脉冲电机/伺服)教程

S7-200 Smart 控制运动轴(脉冲电机/伺服) 结合本人刚接触触摸屏时候的踩坑经验,编写S7-200 Smart 控制运动轴(脉冲电机/伺服)的详细流程,给刚接触PLC的朋友提供一些经验指导。 本文详细介绍了S7-200 Smart 控制脉冲步进/伺服电机流程,包含接线方法及梯形图。希望对初学者有所帮助

xjbsw0的博客 5万+

Swift 控制流

Swift 提供了多种流程控制结构,包括可以多次执行任务的while循环,基于特定条件选择执行不同代码分支的ifguard和Switch语句,还有控制流程跳转到其他代码位置的break和continue语句。Swift 还提供了for-in循环,用来更简单地遍历数组(Array),字典(Dictionary),区间(Range),字符串(String)和其他序列类型。Swift 的Switch语句比许多类C语言要更加强大。case还可以匹配很多不同的模式,包括范围匹配,元组(tuple。

xiaoxiaobukuang的专栏 1132

SAP前台处理:业务伙伴维护(客户主数据和供应商主数据)之基础视图 <BP>

这里主要讲解BP业务伙伴主数据中和财务相关的一些内容,包括基础视图数据,采购视图数据,销售视图数据,公司代码视图数据; S4统一了供应商和客户,从事务代码上:不再使用FD01和FK01进行维护,而使用事务代码BP统一维护;

SAP.David.Gao的博客 3460

Swift学习笔记笔记(二)Swift运算符&控制流

在实验中,我主要会因为自己的粗心大意,方法使用不恰当导致运行结果出现误差,检查出错误后,基本所有的实验结果都可以正常运行出来,特别需要注意的是,Swift默认禁止值溢出,但可使用溢出符号选择溢出行为: a &+ b,另外+可用于String进行连接即可。注意:在大多数语言中,switch 语句块中,case 要紧跟 break,否则 case 之后的语句会顺序运行,而在 Swift 语言中,默认是不会执行下去的,switch 也会终止。通过本次的学习,我了解到Swift支持大多数标准C运算符,并有所改进。

个人博客地址https://sun98k.github.io/ 676

Python爬虫实战:抓取全球各国海关进出口数据的全流程教程

本文系统介绍了用Python采集全球各国海关进出口数据的完整流程,从数据源调研、技术选型,到代码实战、数据处理和存储,最后还拓展了进阶反爬和动态内容处理方法。希望这篇博文能帮助你掌握专业的数据采集技能,为后续数据分析和商业应用奠定坚实基础。

2201_76125261的博客 2362

【100%通过率】华为od统一考试B卷【贪吃蛇】Python 实现

贪吃蛇是一个经典游戏,蛇的身体由若干方格连接而成,身体随蛇头移动。蛇头触碰到食物时,蛇的长度会增加一格。蛇头和身体的任一方格或者游戏版图边界碰撞时,游戏结束。 下面让我们来完成贪吃蛇游戏的模拟。给定一个N*M的数组arr,代表N*M个方格组成的版图,贪吃蛇每次移动一个方格。若arr[i][j] == ‘H’,表示该方格为贪吃蛇的起始位置;若arr[i][j] == ‘F’,表示该方格为食物,若arr[i][j] == ‘E’,表示该方格为空格。贪吃蛇初始长度为1,初始移动方向为向左。

MISAYAONE的博客 1204

Swift学习笔记

通过学习 Swift 语言的基础语法、控制流和函数等内容,我们可以开始编写简单的程序。随着学习的深入,我们还可以探索更多高级的主题,如面向对象编程、协议、泛型等。[学习Swift 途径]1.网络“0 基础入门 Swift” 博客:从最基础的 Swift 语法讲起,逐步深入到更复杂的概念和技术,还通过解析和演示实际开发中的案例,帮助读者理解应用场景,并且提供练习题和项目任务,鼓励动手实践,同时分享有用的外部资源及建立学习社区。

2402_88115203的博客 2009

十.镜头知识之畸变问题

对于理想光学系统,在一对共轭的物像平面上,像的放大率是一个常数。但是对于实际的光学系统,当视场较大或很大时,像的放大率就要随视场而异,这样就会使像相对于物体失去相似性。这种使像变形的成像缺陷称为畸变。

AIoT深度探索者 | 嵌入式系统架构师 深耕物联网(IoT)与人工智能(AI)融合技术,聚焦​​边缘计算、图像开发、低功耗通信协议​​,致力于智能硬件,关注我获取最新技术文章信息与海量资源~ 2126

swift 7. 控制流

swift 7 控制流标签(空格分隔): swift之前说完了swift中的基本数据结构,基本语法,以及字符串、数组、字典,今天看了下貌似又过去好久没有跟新swift了,罪过啊。今天开始跟新下。争取过年回家前全部学完。今天来说下swift中比较重要,当然也是比较简单的控制流。啥是控制流,控制流就是if else switch case while do 还有swif里面特殊且很有用的for-in 等

domorejojo 896

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

iOS开发之Swift篇(5)—— 控制流

目录版本控制流for-inswitch检测API可用性 版本 Xcode 11.0 Swift 5.1 控制流 类似于其他语言, Switch中控制流关键字有: if guard while repeat-while for for-in switch 注: guard 的执行取决于一个表达式的布尔值, 类似于 if, 表过不提; repeat-while 类似于 do-while. 控制...

看影成痴 389

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Swift 基础之控制流

Swift 提供了类似 C 语言的流程控制结构,包括可以多次执行任务的 for 和 while 循环,基于特定条件选择执行不同代码分支的 if 和 switch 语句,还有控制流程跳转到其他代码的 break 和 continue 语句。 除了 C 里面传统的 for 条件递增循环,Swift 还增加了 for-in 循环,用来更简单地遍历数 组(array),字典(dictionary),范围(...

记录从移动端、鸿蒙到物联网与AI的完整实战与思考。专注于分享可复用的工程方案与产品思维,尤其深入鸿蒙生态与全栈开发。以十年工程与管理沉淀,为你提供清晰的技术纵深路径。坚信技术的价值在于“贯通”与“落地”。 2750

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Swift 控制流(笔记)

/***************************** 控制流 Control Flow ***************************/ /** *  For 循环 *  While 循环 *  条件语句 *  控制转换语句 (Control Transfer Statements) *  提前退出 *  检测 API

蒋昉霖的博客 406

跟着洲洲哥一块学习Swift-控制流

今天给大家介绍控制流,也就是控制语句了。比如if,for,switch,do…while…下面就开始介绍了for 循环在Swift中的使用。普通循环 For-In 你可以使用 for-in 循环来遍历一个集合里面的所有元素,例如由数字表示的范围、数组中的元素、字符串中的字符。循环遍历1到10之间的数字// 循环语句 for index in 1...10 { print("\(index)")...

whuizhou的专栏 620

百度网盘macOS破解:三分钟解锁SVIP标识与满速下载

一个 9.23GB 的游戏客户端,速度卡在 100KB/s,剩余时间"超过1天"——这是没开会员的你在百度网盘 macOS 客户端里最常见的画面。BaiduNetdiskPlugin-macOS 是一个面向 macOS 版百度网盘的开源插件:往客户端里注入一个动态库,把本地 SVIP 显示打开、解除客户端自身的下载限速、并把极速下载试用倒计时永久定在 8 秒。整个安装只需几分钟,下面直接走流程。

gitblog_00798的博客 769

Swift-控制流

1. For in 循环 遍历一个集合中的所有元素。 例如:数组中的元素、范围内的数字或者字符串中的字符。 遍历一个数组所有元素: let names = ["Anna", "Alex", "Brian", "Jack"] for name in names { print("Hello, \(name)!") } // Hello, Anna! // Hello, Alex! // ...

hkasdfiu12 343

Swift编程六(控制流)

案例代码下载 控制流 Swift提供了各种控制流程语句。这些包括多次执行任务的while循环; if,guard和switch基于特定条件执行不同代码分支的语句; 和如break和continue对执行流在代码中转移到另一个点的语句。 Swift还提供了for- in循环,可以很容易地遍历数组,字典,范围,字符串和其它序列。 Swift的switch声明比许多类C语言中的声明强大得多。案例可以匹配...

jiuchabaikaishui的专栏 415

[Swift]控制流

1. Swift的控制流:     1) 基本上是C语言的超集,增加了一些gong'negn

Lirx_Tech的专栏 1294

Swift基本语法(3)-控制流

文章原创。未经允许不得转载!写的可以给个赞,博主会发出更多关于Swift的语法和使用 控制流 if Swift 中没有 C 语言中的非零即真概念在逻辑判断时必须显示地指明具体的判断条件 true / falseif 语句条件的 () 可以省略但是 {} 不能省略 let num = 200 if num 10 { print("比 10 小") } else if

luyangMVP的博客 485

Swift中文教程(五)控制流

Swift提供了所有C语言中相似的控制流结构。包括for和while循环;if和switch条件语句;break和continue跳转语句等。 Swift还加入了for-in循环语句,让编程人员可以在遍历数组,字典,范围,字符串或者其它序列时更加便捷。 相对于C语言,Swift中switch语句的case语句后,不会自动跳转到下一个语句,这样就避免了C语言中因为忘记break而造成的错

迟浩东 iOS开发博客 902

Swift 开发教程系列 - 第3章:控制流

控制流是编程中用来控制代码执行顺序的关键部分。Swift 提供了多种控制流语句,如条件语句、循环语句和 switch 语句,帮助开发者根据条件执行不同的代码块或多次重复执行代码。

小创果技术交流博客 425

8、Swift 编程中的控制流与函数

本文深入探讨了 Swift 编程语言中的控制流语句和函数的使用。内容涵盖基础的花括号与圆括号规则、条件语句、循环语句(包括 for 和 while)、控制转移语句(如 break 和 continue),以及函数的定义与结合控制流的实际应用。通过实例讲解了如何利用这些编程要素构建高效、模块化的应用程序,适合希望掌握 Swift 核心编程技巧的开发者阅读。

gin88的博客 65
上一篇: iOS开发常见问题集
下一篇: Swift 学习笔记 4-函数
CatchZeng
博客等级 码龄15年 4粉丝 25原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值