swift 04 流程控制

前端之家收集整理的这篇文章主要介绍了swift 04 流程控制前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

1.分支结构

Swift提供两种常见的分支控制结构:if语句和swich语句。一般来说,当条件简单且可能情况较少时使用if语句;当条件比较复杂情况较多时则可以考虑使用swich语句。

if条件语句

if语句有三种形式
第一种:

if expression
{
 statements...
}

第二种:

if  expression
{
 statements...
}
else
{
 statements...
}

第三种

if  expression
{
 statements...
}
else if expression
{
 statements...
}
else
{
 statements...
}

简单举个例子:

var age = 30
if age > 20
{
    print("年龄大于20岁")
}else
{
    print("年龄小于等于20岁")
}

switch分支语句

switch语法的语句格式为:

switch expression
{
case value1:
statements...
case value2,value3:
statements...
default:
statements...
}

举个简单例子:

var score = 78
switch score
{
    case 91...100:
        print("优秀")
    case 81...90: 
        print("良好")
    case 71...80: 
        print("中")
    case 60...70: 
        print("及格")
    case 0..<60: 
        print("不及格")
    default: 
        break
}

使用switch语句需要注意的是,Swift的任意一个case块执行完成后会自动终止该switch语句,因此要求每个case块至少要包含一条语句,否则会导致编译错误

2.循环结构

循环语句可能包括如下4个部分:

  • 初始化语句(init_statements):在循环开始之前完成一些初始化操作。
  • 循环条件(test_expression):决定是否执行循环体。
  • 循环体(body_statements):循环的主体。
  • 迭代语句(iteration_statements):通常用于控制循环条件的变量,使得循环在合适的时候结束。

while循环语句

while循环语句的语法格式:

[init_statements]
while test_expression
{
statements
[iteration_statements]
}

举个简单例子:

// 循环的初始化条件
var count = 0
while count < 10
{
    print("count:\(count)")
    // 迭代语句
    count++
}

do while循环语句

do while循环先执行循环体,然后才判断循环条件,如果循环条件为真,则执行下一次循环,否则中止循环。do while循环的语法格式如下:

[init_statements]
do
{
 statements
[iteration_statements]
}while test_expression

举个简单例子:

// 循环的初始化条件
var count = 1
do
{
    print("count: \(count)")
    // 循环迭代语句
    count++
} while count < 10

for 循环语句

for 循环的基本语法格式如下:

for [init_statements]; [test_expression]; [iteration_statements]
{
 statements
}

举个简单例子:

for var count = 0 ; count < 10 ; count++
{
    print("count: \(count)")
}

for-in 循环语句

for-in循环专门用于遍历范围、序列和集合等包含的元素。for-in循环的基本语法格式如下:

for 常量名 in 范围|集合
{
 statements
}

下面程序使用for-in循环遍历范围:

for number in 1..3
{
    print(number)
}

3.控制循环

Swift提供了break和continue来控制循环;另外return也可以通过结束整个方法来结束循环。

用break结束循环

for var i = 0; i < 10 ; i++
{
    print("i的值是:\(i)")
    if i == 3
    {
        // 执行该语句时将结束循环
        break
    }
}

用continue忽略本次循环剩余语句

for var i = 0; i < 3 ; i++
{
    print("i的值是\(i)")
    if i == 1
    {
        // 忽略本次循环的剩下语句
        continue
    }
    print("continue后的输出语句")
}

输出的结果为:
i的值是0
continue后的输出语句
i的值是1
i的值是2
continue后的输出语句

从运行结果来看,当i等于1时,程序没有输出“continue后的输出语句”,因为程序执行到continue时,忽略了本次循环中continue语句后的代码

用return结束方法

func test()
{
    for var i = 0; i < 10 ; i++
    {
        print("i的值是:\(i)");
        if i == 1
        {
            return;
        }
        print("return后的输出语句")
    }
}
test()

上面的程序,当i等于1时程序将完全结束。虽然return不是用来专门控制循环语句的关键字,但通过return语句确实可以结束一个循环。

猜你在找的Swift相关文章