HƯỚNG DẪN VỀ CẤU TRÚC ĐIỀU KHIỂN, HÀM TRONG SWIFT 3 Ở bài trước mình đã hướng dẫn các bạn cơ bản về các kiểu dữ liệu, cấu trúc ngôn ngữ swift 3.. Tiếp theo trong bài này mình sẽ giới thi
Trang 1HƯỚNG DẪN VỀ CẤU TRÚC ĐIỀU KHIỂN, HÀM TRONG SWIFT 3
Ở bài trước mình đã hướng dẫn các bạn cơ bản về các kiểu dữ liệu, cấu trúc ngôn ngữ swift 3 Tiếp theo trong bài này mình sẽ giới thiệu cho các bạn về các cấu trúc điều khiển, cũng như khai báo một hàm trong swift 3 Swift là bản thiết kế lại ngôn ngữ Objective C một cách tuyệt vời
Chúng ta vẫn tiếp tục sử dụng Playground File -> new ->Playground
– Cấu trúc điều khiển:
Tương tự các ngôn ngữ khác swift 3 cũng sử dụng cấu trúc if else:
Loại 1:
If điều kiện== true{
// thực hiện khi điều kiện đúng
}
Loại 2:
If điều kiện== true{
// thực hiện khi điều kiện đúng
}else{
// ngược lại => Thực hiện code
}
Loại 3:
If điều kiện1 == true{
// thực hiện khi điều kiện đúng
}else if điều kiện2 == true{
// Thực hiện code
Trang 2}else{
// ngược lại điều kiện 1 ,2 => Thực hiện code
}
ví dụ:
1 var check :Bool=false
3 if check {
4 print("true")
5 }else{
6 print("false")
7 }
=> kết quả sẽ thông báo false
Tương tự ngôn ngữ khác swift 3 cũng cung cấp switch nhiều lựa chọn Do vấn đề
if else if có giới hạn và trình bày nhiều lựa chọn khó quản lý code Trong trường hợp nhiều lựa chọn chúng ta nên sử dụng switch
Switch trong swift 3:
Khai báo tổng quát:
switch điều kiện {
case 1:// nếu điều kiện =1
print(“1”)
break;
case 2://nếu điều kiện =2
print(“2”)
break;
default:// không có lựa chọn nào, luôn chạy vào default
Trang 3print(“default”)
break;
}
ví dụ:
2 var c = 2
3 switch c {
4 case 1:
5 print("1")
6 break;
7 case 2:
8 print("2")
9 break;
10 default:
11 print("default")
12 break;
13 }
kết quả trả về : 2
Vòng lặp trong swift 3 :
Vòng lặp có giới hạn: for()
Cấu trúc tổng quát :
for đối tượng in danh sách đối tượng { }
+ Đối tượng i chạy trong danh sách A for i in A{
print(i)
}
Trang 4=> In ra danh sách đối tượng trong danh sách A
+ Biến i chạy từ 0->3
for i in 0 <3{
print(i)
}
=> In ra 1,2,3
+ Đối tượng chỉ số i chạy i=0 -> count A
for i in 0 <A.count{
print(A[i])
}
In ra các đối tượng trong danh sách A
– Vòng lặp vô hạn : while
Khai báo tổng quát:
while( điều kiện== true){
// điều kiện đúng thì thực hiện các dòng code bên trong thân while }
ví dụ:
1 var check1 :Bool=true
2
3 while(check1){
4 print("Điều kiện đúng");
5
6 }
Trang 5Trả về: “Điều kiên đúng” vô hạn
– Vòng lặp vô hạn :repeat while:
Trong swift 3 không sử dụng do while như trong Objective C, hay các ngôn ngữ khác mà sử dụng repeat while tương tự như do while
khai báo tổng quát:
repeat{
// code
}while(điều kiện )
Ở đây khác while ở chỗ chúng ta luôn thực hiện đoạn code bên trong vòng lặp ít nhât một lần
+ While kiểm tra điều kiện đúng thì vào vòng lặp
+ repeat while : vào vòng lặp chạy xong kiểm tra
ví dụ:
1 var k = 0;
2
3 repeat{
4 k += 1;
5 print(k)
6 }while(k<10)
kết quả trả về 1->10;
-Khai báo hàm trong swift 3:
Khai báo tổng quát:
+ func Tên hàm (Tham số 1:Kiểu dữ liệu, tham số 2: Kiểu dữ liệu) -> Giá trị trả về mặc định void {
Trang 6// code
}
+ ví dụ :
2 func sum(a:Int, b:Int) -> Int {
3 return a+b
4 }
+ Hàm trả về nhiều tham số:
func Tên hàm (Tham số 1:Kiểu dữ liệu, tham số 2: Kiểu dữ liệu) -> (Giá trị trả về 1: Kiểu trả về,Giá trị trả về 2: Kiểu trả về) {
// code
}
ví dụ:
1 func cal(v1:Int, v2:Int) -> (min: Int, max: Int) {
2 if v1<v2 {
3 return (min: v1, max: v2)
4 }else{
5 return (min: v2, max: v1)
6 }
7 }
+ Hàm nhiều tham số truyền vào:
func Tên hàm (tham số: Kiểu dữ liệu…) -> Giá trị trả về {
// code
}
ví dụ:
Trang 71 func In(values: Int ) -> (first:Int,last:Int) {
2 return (first:values[0],last:values[values.count-1])
3 }
+Tính năng rất tuyệt vời trong Swift là Hàm trong Hàm:
func Tên hàm (tham số: Kiểu dữ liệu…) -> Giá trị trả về {
func Tên hàm (tham số: Kiểu dữ liệu…) -> Giá trị trả về {
}
}
ví dụ:
1 func Infor() -> Void {
2 func Infor1(){
3 print("ham1")
4 }
5 func Infor2(){
6 print("ham2")
7 }
8 Infor1()
9 Infor2()
10
11 }
+ Hàm có gợi ý tương tự trong Objctive C:
khai báo tổng quát:
func Tên hàm (Tham số 1:Kiểu dữ liệu,Gợi ý tham số 2: Kiểu dữ liệu) -> { // /code
}
ví dụ : gợi ý “SoATruSob:
Trang 81 func Hieu(intSoA :Int,SoATruSob intSoB:Int) -> Int {
2 return intSoA-intSoB;
3 }
– Gọi Hàm trong Swift 3:
Tổng quát:
Tên Hàm(tham số1 Giá trị,tham số2 Giá trị,tham số3 Giá trị …vv) Gọi Hàm khai báo bên trên :
// hàm tổng quát
+ var Sum = sum(3, b: 5);
// hàm nhiều giá trị trả về
+ var t = cal(5, v2: 9)
Truy vấn max: t.max
Truy vấn min: t.min
// hàm truyền vào nhiều tham số
+ var S = In(1,2,3,4,5)
Truy vấn giá trị cuối: S.last
// Hàm trong hàm
1 func Infor() -> Void {
2 func Infor1(){
3 print("ham1")
4 }
5 func Infor2(){
6 print("ham2")
7 }
8 Infor1()
Trang 99 Infor2()
10
11 }
12
13 Infor()
// Hàm có gợi ý
+ Hieu(7, SoATruSob: 2)
link full code:
1 http://www.mediafire.com/download/0hvpbnip3jfw6qq/Swift3CoBan2.playgr ound.zip