当前位置: 首页 > news >正文

IOS-05 Swift循环控制语句

在 Swift 编程语言中,控制语句用于决定程序的执行流程,使我们能够根据不同的条件和情况来控制代码的执行顺序。下面我们将详细介绍几种常见的控制语句

一、for 循环

let names = ["zhangsan","lisi"]
for name in names{print(name)switch name{case "zhangsan":print("i am zhangsan")breakdefault:print("i dont no")}
}

在上述代码中,使用 for-in 循环遍历数组 names 中的每个元素,并通过 switch 语句根据元素的值执行不同的操作。

二、switch 语句

let yuan = (0,30)
switch yuan{case (0,let y):print("我在 y 轴的\(y)位置上")breakcase (0,0):print("我在 0.0 位置上")default:print("i dont no")
}

 switch 语句用于根据不同的条件执行相应的代码块。在这个例子中,根据元组 yuan 的值进行匹配和执行。

三、while 循环

var index = 0
while index<10{print(index)index += 1
}

while 循环在条件为真时,会不断执行循环体中的代码。

四、repeat-while 循环和if

repeat {print(index)index -= 1if(index == 1){print(index)}else if(index == 2){print(index)}else{print(index)}
} while index == 0

repeat-while 循环会先执行一次循环体,然后再判断条件是否满足,如果满足则继续循环,否则退出循环。
通过合理运用这些控制语句,我们可以根据不同的逻辑需求来实现灵活和高效的程序流程控制。

五、源码

//
//  console_study.swift
//  StudySwift
//
//  Created by YuJun on 2024/7/28.
//import Foundationfunc for_while_if_switch_study(){let names = ["zhangsan","lisi"]for name in names{print(name)switch name{case "zhangsan":print("i am zhangsan")breakdefault:print("i dont no")}}let yuan = (0,30)switch yuan{case (0,let y):print("我在y轴的\(y)位置上")breakcase (0,0):print("我在0.0位置上")default:print("i dont no")}var index = 0while index<10{print(index)index += 1}repeat {print(index)index -= 1if(index == 1){print(index)}else if(index == 2){print(index)}else{print(index)}} while index == 0}

     关注公众号:资小库,回复ios,下载练习代码,问题快速答疑解惑

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 修复SteamUI.dll加载失败的指南,快速修复failed to load steamui.dll
  • 【Android】Fragment的添加
  • 【Golang 面试 - 基础题】每日 5 题(五)
  • opencascade AIS_ManipulatorOwner AIS_MediaPlayer源码学习
  • 使用 Docker Compose 部署 RabbitMQ 的一些经验与踩坑记录
  • Python 消费Kafka手动提交 批量存入Elasticsearch
  • 微信小程序-使用Component方法代替Page方法构造页面
  • Profinet转EtherNet/IP协议转化网关(功能与配置)
  • DT浏览器使用教程之如何写书法笔记
  • mysql特殊字符、生僻字存储设置
  • idea-springboot后端所有@注释含义汇总-持续更新!
  • C++ 学习补充 1:短链算法
  • 高效掌握芯片设计技术的不二选择
  • 【redis】一致性hash算法和hash槽
  • 测试面试宝典(三十四)—— token是做什么用的?
  • es6要点
  • JavaSE小实践1:Java爬取斗图网站的所有表情包
  • MYSQL如何对数据进行自动化升级--以如果某数据表存在并且某字段不存在时则执行更新操作为例...
  • Vue 动态创建 component
  • Yii源码解读-服务定位器(Service Locator)
  • 第三十一到第三十三天:我是精明的小卖家(一)
  • 力扣(LeetCode)21
  • 微信小程序上拉加载:onReachBottom详解+设置触发距离
  • 远离DoS攻击 Windows Server 2016发布DNS政策
  • 在 Chrome DevTools 中调试 JavaScript 入门
  • 自制字幕遮挡器
  • 交换综合实验一
  • ​Benvista PhotoZoom Pro 9.0.4新功能介绍
  • #565. 查找之大编号
  • #php的pecl工具#
  • (152)时序收敛--->(02)时序收敛二
  • (24)(24.1) FPV和仿真的机载OSD(三)
  • (阿里云万网)-域名注册购买实名流程
  • (顶刊)一个基于分类代理模型的超多目标优化算法
  • (二)WCF的Binding模型
  • (仿QQ聊天消息列表加载)wp7 listbox 列表项逐一加载的一种实现方式,以及加入渐显动画...
  • (附源码)springboot家庭财务分析系统 毕业设计641323
  • (附源码)小程序儿童艺术培训机构教育管理小程序 毕业设计 201740
  • (一)80c52学习之旅-起始篇
  • (一)spring cloud微服务分布式云架构 - Spring Cloud简介
  • .NET Core 实现 Redis 批量查询指定格式的Key
  • .NET gRPC 和RESTful简单对比
  • .NET WebClient 类下载部分文件会错误?可能是解压缩的锅
  • .NET 某和OA办公系统全局绕过漏洞分析
  • /deep/和 >>>以及 ::v-deep 三者的区别
  • /var/log/cvslog 太大
  • [1] 平面(Plane)图形的生成算法
  • [3300万人的聊天室] 作为产品的上游公司该如何?
  • [5] CUDA线程调用与存储器架构
  • [Android] Binder 里的 Service 和 Interface 分别是什么
  • [ARC066F]Contest with Drinks Hard
  • [BZOJ 4598][Sdoi2016]模式字符串
  • [C#] 如何调用Python脚本程序
  • [DEBUG] spring boot-如何处理链接中的空格等特殊字符
  • [HarekazeCTF2019]encode_and_encode 不会编程的崽