Swift控制语句

分支语句

 

1. 条件语句 if-else ,基本语法形式如下,其中 “[]” 中 的部分可以省略。

 

if boolean-expression {
 
statement1;
 
 
}  [else if boolean-expression    {
 
statement2;
 
}  ] [else  {
statement3;
 
 
}  ]
 

实例:

 

 
var number1 = 0;

var number2 = 1;
 
var max = 0;
 
if number1 >number2 {
 
max = number1;
 
} else if number1 < number2 {
 
max = number2;
 
} else {
 
max = number1;
 
}
println("Themaximum is \(max)")

2 .多分支语句 switch 它的语法形式如下:

 

switch some value to consider {
 
case value 1:
 
respond to value 1 case value 2,                value 3:
respond to value 2 or 3

default:
 
otherwise, do something else
 
}

 

每个 case 不需要显式地添加 break ,每个 case 至少有 一条语句。

 

可以比较任何类型。

实例1:

 

let someCharacter: Character ="e" switch someCharacter {
case "a", "e", "i","o", "u":
 
println("\(someCharacter) isa vowel")case "b", "c", "d", "f", "g", "h", "j", "k", "l","m", "n", "p", "q", "r", "s", "t", "v", "w", "x", "y", "z":
println("\(someCharacter) is a consonant")
 
default:
 
println("\(someCharacter)  is not  a  vowel   or  a consonant")
 
}
 

实例2:

 

let count = 3_000
 
let countedThings = "stars inthe Milky Way"varnaturalCount: String
switch count {
 
case 0:
 
naturalCount ="no" case 1...3:
naturalCount ="a few" case 4...9:
naturalCount ="several"
 
case 10...99:
 
naturalCount ="tens of" case 100...999:
naturalCount ="hundreds of" case 1000...999_999:
naturalCount ="thousands of"
 
default:

naturalCount = "millions and millions of"
 
 
}
 
println("There are \(naturalCount) \(countedThings).")

 

 

循环语句

 

while语句


do-while语句

 

for语句

 

for in语句

while 循环

while condition{
 
statements
 
}
vari = 100 varr = 0 vars= 0 vart = 0
while i < 1000 {

r= i / 100
 
s=( i - r* 100 ) / 10
 
t= i - r* 100 - s* 10
 
if( i == r * r* r + s* s *s + t* t * t){
 
println ( "i = \(i)" )
 
}
i++
}
do while 循环 
do {
 
statements
 
} while condition
vari = 100 varr = 0 vars= 0 vart = 0

do      {
 
r= i / 100
 
s=( i - r* 100 ) / 10
 
t= i - r* 100 - s* 10
 
if( i == r * r* r + s* s *s + t* t * t){
 println ("i = \(i)" )
 
} 
i++
} while i < 1000


for 循环

for initialization; condition; increment {
statements
}
vari= 8 varr = 0 vars= 0
forvarj =0; j <=i; j++{
 
r = j * j
 
s=j * j * j

println (" 整数为 :\(j) ");
 
println (" 对应的平方和 :\( r)")
 
println ( " 对应的立方和 : \( s ) " )
 
}

for in 循环

 

用于遍历集合。


1.  遍历范围

 
forindex in1...5{
 
println( " \(index) times 5 is \(index * 5 )" )
 
}

 

2.  忽略循环变量

 

letbase = 3

letpower = 10 varanswer = 1
for_ in 1...power {
 
answer *=base
 
}
 
println (" \(base )to the power of \(power )is \(answer ) " )

 

 

3.  遍历数组

 

letnames =[ "Anna" ,"Alex" , "Brian" ,"Jack"]
 
forname innames {
 
println( "Hello, \(name) !" )
 
}

4.  遍历字典

 letnumberOfLegs =[ "spider" :8 , "ant" :6 , "cat" : 4]
 
for(animalName, legCount) innumberOfLegs {
 
println( " \(animalName) s have \(legCount) legs" )
 
}


5 .遍历字符串

 

 letnumberOfLegs =[ "spider" :8 , "ant" :6 , "cat" : 4]
 
for(animalName, legCount) innumberOfLegs {
 
println( " \(animalName) s have \(legCount) legs" )
 
}
 letnumberOfLegs =[ "spider" :8 , "ant" :6 , "cat" : 4]
 
for(animalName, legCount) innumberOfLegs {
 
println( " \(animalName) s have \(legCount) legs" )
 
}


1.12.3 跳转语句

 

 •   continue

 •   break

 

•   fallthrough

 

•   return

 

 

 

 

 

1.continue 实例:

 

for var i = 0; i < 100; i++ {
 
if i % 10 == 0 {
 
continue;
 
}
 
println("i = \(i)");
 
}

2. break 实例:

 

for var i = 0; i < 10;i++ {
 
if i == 3 {
 break;
 }
println("i = \(i)");
}
 println("Game Over!");

3. fallthrough 实例:

 

let integerToDescribe = 5
 var description = "Thenumber \(integerToDescribe) is"
 switchintegerToDescribe {
 case 2, 3, 5, 7, 11, 13, 17, 19:
 description += " a prime number, and also"fallthrough
default:
 description += " an integer."
}
 
println(description)

Swift交流讨论论坛论坛:http://www.cocoagame.net

欢迎加入Swift技术交流群:362298485


上一篇:解构赋值,你不能不懂!


下一篇:你应该这个姿势学习PHP(1)