Trong ngôn ngữ lập trình Swift, việc tạo ra các hàm (function) là một trong những thao tác cơ bản và quan trọng nhất. Để định nghĩa một hàm trong Swift, chúng ta sử dụng từ khóa func
. Bài viết này sẽ hướng dẫn chi tiết về cách tạo hàm và các khái niệm liên quan trong Swift.
Cú pháp cơ bản của hàm trong Swift
Một hàm trong Swift được định nghĩa bằng từ khóa func
, theo sau là tên hàm và cặp ngoặc đơn ()
. Nếu hàm có tham số, các tham số này sẽ được đặt trong cặp ngoặc đơn. Phần thân của hàm sẽ được đặt trong cặp ngoặc nhọn {}
. Dưới đây là cú pháp cơ bản của một hàm không có tham số và không trả về giá trị:
func sayHello() {
print("Hello, World!")
}
Để gọi hàm sayHello
, bạn chỉ cần sử dụng tên của hàm theo sau bởi cặp ngoặc đơn:
sayHello()
Hàm với tham số
Nếu hàm cần nhận tham số, bạn sẽ định nghĩa chúng trong cặp ngoặc đơn sau tên hàm. Dưới đây là một ví dụ về một hàm nhận hai tham số:
func greet(name: String, age: Int) {
print("Hello \(name), you are \(age) years old.")
}
Khi gọi hàm greet
, bạn cần cung cấp các giá trị cho các tham số name
và age
:
greet(name: "John", age: 30)
Hàm trả về giá trị
Để tạo một hàm mà trả về một giá trị, bạn sử dụng ký hiệu mũi tên ->
theo sau là kiểu dữ liệu mà hàm sẽ trả về. Dưới đây là ví dụ về một hàm cộng hai số và trả về kết quả:
func add(a: Int, b: Int) -> Int {
return a + b
}
Bạn có thể gọi hàm add
và lưu trữ giá trị trả về vào một biến:
let result = add(a: 5, b: 3)
print(result) // Kết quả sẽ là 8
Hàm với tham số mặc định
Trong Swift, bạn cũng có thể định nghĩa các giá trị mặc định cho tham số của hàm. Điều này giúp cho việc gọi hàm trở nên linh hoạt hơn:
func greet(name: String = "Guest") {
print("Hello, \(name)!")
}
// Gọi hàm không đối số
greet() // Kết quả sẽ là: Hello, Guest!
// Gọi hàm với đối số
greet(name: "Alice") // Kết quả sẽ là: Hello, Alice!
Hàm với tham số in-out
Khi bạn cần một hàm có thể thay đổi giá trị của tham số, bạn có thể sử dụng tham số kiểu in-out. Bạn định nghĩa tham số này bằng từ khóa inout
trước kiểu dữ liệu của nó. Khi gọi hàm, bạn phải dùng ký hiệu &
trước biến để chỉ ra rằng nó có thể bị thay đổi:
func swapValues(a: inout Int, b: inout Int) {
let temp = a
a = b
b = temp
}
var num1 = 10
var num2 = 20
swapValues(a: &num1, b: &num2)
print("num1: \(num1), num2: \(num2)") // Kết quả sẽ là: num1: 20, num2: 10
Kết luận
Tạo hàm với từ khóa func
trong Swift là một thao tác nền tảng giúp bạn xây dựng các chương trình phức tạp một cách dễ dàng và hiệu quả. Khả năng định nghĩa các hàm với các tham số, giá trị trả về, và thậm chí các tham số in-out cũng giúp tăng cường tính linh hoạt và hiệu suất của mã nguồn. Hy vọng rằng qua bài viết này, bạn đã hiểu rõ hơn về cách tạo hàm và cách sử dụng chúng trong Swift.
Comments