swift4基础学习(2)- 循环、元组、条件语句

本文介绍了Swift语言中的循环结构,包括for循环、while循环的不同用法及特点,并详细讲解了条件语句如if和switch的使用方法。此外,还展示了如何通过元组和字典进行迭代。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

import UIKit

var str = "Hello, playground"

//1.for循环
//1.1 index 的声明周期只存在for循环内
//...指闭区间 1~10
for index in 1...10{
    print("num=\(index)")
}

//1.2开区间1-4
for index in 1..<5 {
    print("kai=\(index)")
}

//1.3 使用 _ 忽略索引
for _ in 1...5 {
    
}

//1.4 遍历数组
let names = ["小明", "小方" , "李四"]
for name in names where name == "小方"{   //where与sql中的where中用法类似
    print(name)
}

//1.5带有索引的数组遍历
for (index,name) in names.enumerated() {
    
    print("index=\(index): name=\(name)")
}

//2 元组
//定义:使用()并以 “,” 区分,多个值组合而成的复合组。
//元组中的值可以是任意类型,每一个元素的类型可以是不同的
let httpError = (404, "error network")

//2.1获取元组中的值
print(httpError.0,httpError.1)

//2.2元组赋值
let (statusCode,statusDes) = httpError

//2.3忽略元组中的某个值
let (statusCodeTwo,_) = httpError

//2.4元组中的元素定义名字
let http200Status = (status: 200, des: "sucess")
print(http200Status.status,http200Status.des)


//3.1字典遍历
let vegetables = ["鸡蛋": 1, "黄瓜": 4, "番茄": 2]

for (key,value) in vegetables {
    print(key,value)
}
//字典元素遍历顺序和插入顺序可能不同,因为字典内容在内部是无序的,所有遍历元素不能保证顺序


//3.2字符串中的字符也是可以
for char in "hello swift"{
    print(char)
}

//3.3数组  倒叙
for name in names.reversed(){
    print(name)
}

//4.while循环
var count = 0
//第一种
while count < 5 {
    count = count + 1
    print(count)
}

//第二种
repeat{
    count = count + 1
    print("浏览数: \(count)")
}while count < 10


let numberOfTag = [
    "vivo":[24,42,12,49,10],
    "小米":[21,25,12,9,30],
    "华为":[18,43,29,19,10],
]

var lastBig = 0
var valuekey = ""
var valueIndex = 0
for (key,values) in numberOfTag{
    
    //带有索引的数组遍历
    for (index, number) in values.enumerated() {
        if number > lastBig {
            lastBig = number
            valuekey = key
            valueIndex = index
        }
    }
}

print("最大值: \(lastBig) 位置:\(valuekey) \(valueIndex)")


//5. 条件语句
// 在 if语句中,条件必须是一个布尔值表达式,不会隐式的与0做对比

var testC = true

if testC {
    print("YES")
}

//由于if中的必须是bool表达式,那么有两种方式判断一个对象是否为空
var testCondition:String? = "2"

//testCondition 必须声明optional
//如果有值就赋值给condition
// 使用 if 和 let 来处理值缺失情况, 如果变量的值为nil,条件会判断为 false
//oc中 对象为nil时直接为false
if let condition = testCondition {
    print("有值:\(condition)")
}else{
    print("没有值:")
}

//第二种
if testCondition != nil {
    print("testCondition有值")
}

//6. switch
// switch  与oc相比不需要写break
// case 执行完,就会终止switch预计
//case 从一个case与领一个case关联使用fallthrough
//每一个case 分支必须包含一条语句

let characterTest = "a"

switch characterTest {
case "a":
    print("值为a")
    print("------")
    fallthrough
case "b","B":            // 可以包含多个模式,用逗号把他们分开
    print("值为b")
     print("------")
case "c":
    print("值为c")
     print("------")
default:
    print("未知")
}

//区间匹配
let num = 1000
var countType:String?
switch num {
case 1...9:
    countType = "ge"
case 10...99:
    countType = "时"
case 100...999:
    countType = "百"
case 1000...9999:
    countType = "千"
default:
    countType = "未知"
}
print(countType!)

//7.1元组值可忽略
let point = (1,1)

switch point {
case (0,0):
    print("原点")
case (0,_):
    print("y轴")
case (_,0):
    print("x轴")
case (-2...2, -2...2):
    print("在以原点为0,0,边长2根号2的正方形中")
default:
    print("不在轴上")
}

//7.2值绑定
switch point {
case (let x,0):
    print("x点 \(x)")
case (0, let y):
    print("y轴 \(y)")

case (let x, let y):
    print(" \(x) \(y)")

}

//7.3case可以使用 where 语句来判断额外的套件

let anotherPoint = (2,2)

switch anotherPoint {
case let(x,y) where x == y:
    print("位置对称")
case let(x,y) where x == -y:
    print("反对称")
default:
     print("没有对称")
}

 

资源下载链接为: https://pan.quark.cn/s/22ca96b7bd39 在当今的软件开发领域,自动化构建与发布是提升开发效率和项目质量的关键环节。Jenkins Pipeline作为一种强大的自动化工具,能够有效助力Java项目的快速构建、测试及部署。本文将详细介绍如何利用Jenkins Pipeline实现Java项目的自动化构建与发布。 Jenkins Pipeline简介 Jenkins Pipeline是运行在Jenkins上的一套工作流框架,它将原本分散在单个或多个节点上独立运行的任务串联起来,实现复杂流程的编排与可视化。它是Jenkins 2.X的核心特性之一,推动了Jenkins从持续集成(CI)向持续交付(CD)及DevOps的转变。 创建Pipeline项目 要使用Jenkins Pipeline自动化构建发布Java项目,首先需要创建Pipeline项目。具体步骤如下: 登录Jenkins,点击“新建项”,选择“Pipeline”。 输入项目名称和描述,点击“确定”。 在Pipeline脚本中定义项目字典、发版脚本和预发布脚本。 编写Pipeline脚本 Pipeline脚本是Jenkins Pipeline的核心,用于定义自动化构建和发布的流程。以下是一个简单的Pipeline脚本示例: 在上述脚本中,定义了四个阶段:Checkout、Build、Push package和Deploy/Rollback。每个阶段都可以根据实际需求进行配置和调整。 通过Jenkins Pipeline自动化构建发布Java项目,可以显著提升开发效率和项目质量。借助Pipeline,我们能够轻松实现自动化构建、测试和部署,从而提高项目的整体质量和可靠性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值