0.2 控制流程

作者: 笑熬齊澄 | 来源:发表于2017-10-12 18:29 被阅读12次

//----------------  0.2 控制流程  ---------------

1.判断:

//条件是中的()是可选的,bady中的大括号是必须的

//在if语句中,条件*必须*是一个布尔表达式(Swift不会像OC那样默认与零比较) ? 是将值标记为可选

var optionalString:String? = "HELLO"

print(optionalString == nil)

2.if与let(var)连用可以判断值是否为*空* 同时赋值成功

var optionalName: String? = "nil"//判断这个值是否为空

var greeting = "Hello!"

if var name = optionalName {

name = "123"

greeting = "值不空,\(name)"

}else{

greeting = "值为空"

}

print(greeting)

3. ?? 判断前面值是否为空 不为空用前面的值 为空则使用后面的值

let nickName:String? = "123"

let fullName:String = "John Appleseed"

let informalGreeting = "Hi \(nickName ?? fullName)"

print(informalGreeting)

//switch语句可以判断String类型啦~~(判断的值必须已经确定 不能为空)

let vegetable:String = "nil"

switch vegetable {

case "cba":

print("switch语句可以判断String类型啦~~")

case "abc","ccc":

print("switch中case里的,是表示或的意思")

case let x where x.hasSuffix("pepperx")://这里的case where 组合是用来添加条件的(eg2)

print("Is it a spicy \(x)?")

default://有必要(匹配成功后,程序退出switch语句,执行不会继续到下一种情况)

print("switch语句可以判断String类型")

}

/*

// hasSuffix(string)返回一个布尔值表示字符串是否以指定的后缀结束。

// 如果一直返回true 如果不一致返回false

// hasPrefix(string)返回一个布尔值表示字符串是否以指定的前缀开始。

// 如果一直返回true 如果不一致返回false

//eg1:

var x = "aaa"

if x.hasSuffix("pepperx") {

print("ok")

}else{

print("no")

}

//eg2:找出1-100内能够整除5的数

//一般做法

for i in 1...100 {

if i % 5 == 0 {

print(i)

}

}

//case where做法

for case let i in 1...100 where i % 3 == 0 {

print(i)

}

**/

4.找出字典中最大的值

let interestingNumbers = [

"Prime": [2, 3, 5, 7, 11, 13],

"Fibonacci": [1, 1, 2, 3, 5, 8],

"Square": [1, 4, 9, 16, 25],

]

5.可以使用for- in通过提供一对用于每个键值对的名称来迭代字典和数组。 词典是一个无序的集合,所以它们的键和值以任意的顺序迭代

var largest = 0

for (_, numbers) in interestingNumbers {//用(_,value)来表示字典中的键值对

for number in numbers {

if number > largest {

largest = number

}

}

}

print(largest)

6.white语句:直到型循环

var n = 2

while n < 100 {

n *= 2

}

print(n)

7.反写white语句:确保了循环至少运行一次~

var m = 2

repeat {

m *= 2

} while m < 100

print(m)

8.可以..< (...) 将索引保留在循环中。使用..< 使省略了其上限值的范围内,并用...做既包括值的范围。

var total = 0

for i in 0..<4 {

total += i

}

print(total)

相关文章

  • 0.2 控制流程

    //---------------- 0.2 控制流程 --------------- 1.判断: //条件是中的...

  • Auxdio SDK for Android

    title: 多房间控制SDK for Android(V 0.2) tags: AuxdioProtocol,S...

  • 5-流程控制

    流程控制 流程 计算机执行代码的顺序就是流程 流程控制 对计算机代码执行顺序的管理就是流程控制 流程分类 流程控制...

  • 04-流程控制及while循环

    流程控制 流程: 计算机执行代码的顺序,就是流程。 流程控制: 对计算机代码执行顺序的控制,就是流程控制。 流程分...

  • JavaScript-流程控制语句

    一、if流程控制语句 二、switch流程控制语句 三、流程控制语句

  • js流程控制

    2 - 流程控制 2.1 流程控制概念 2.2 顺序流程控制 ​ 顺序结构是程序中最简单、最基本的流程控制,它...

  • 二级-2.Python流程控制

    流程控制 流程:计算机执行代码的顺序就是流程。 流程控制:对计算机代码执行顺序的管理就是流程控制。 流程控制一共分...

  • Python基础重构-1.3流程控制

    流程控制语句 流程控制语句用来实现对程序流程的选择、循环和返回等进行控制,Python中主要的流程控制包括if(判...

  • activiti学习笔记(九)RuntimeService

    RuntimeService 流程运行控制服务 启动流程及对流程数据的控制 流程实例(ProcessInstanc...

  • 【骚全带你学Java---八、流程控制语句】

    java的流程控制语句包含条件语句和循环语句 一.什么是流程控制语句? ·流程控制语句:可以控制程序的执行流程。 ...

网友评论

    本文标题:0.2 控制流程

    本文链接:https://www.haomeiwen.com/subject/ivpoyxtx.html