Hàm Kotlin
Hàm là một khối mã chỉ chạy khi được gọi.
Bạn có thể truyền dữ liệu, được gọi là tham số, vào một hàm.
Các hàm được sử dụng để thực hiện một số hành động nhất định và chúng còn được gọi là các phương thức .
Các hàm được xác định trước
Vậy là bạn đã biết hàm là gì rồi. Bạn đã sử dụng nó suốt thời gian qua hướng dẫn này!
Ví dụ: println()
là một hàm. Nó được sử dụng để xuất/in văn bản ra màn hình:
Tạo chức năng của riêng bạn
Để tạo hàm của riêng bạn, hãy sử dụng từ khóa fun
và viết tên hàm, theo sau là dấu ngoặc đơn () :
Ví dụ
Tạo một hàm có tên "myFunction" sẽ xuất ra một số văn bản:
fun myFunction() {
println("I just got executed!")
}
Gọi một hàm
Bây giờ bạn đã tạo một hàm, bạn có thể thực thi nó bằng cách gọi nó.
Để gọi một hàm trong Kotlin, hãy viết tên hàm theo sau là hai dấu ngoặc đơn () .
Trong ví dụ sau, myFunction()
sẽ in một số văn bản (hành động) khi nó được gọi:
Ví dụ
fun main() {
myFunction() // Call myFunction
}
// Outputs "I just got executed!"
Hãy tự mình thử »Một hàm có thể được gọi nhiều lần nếu bạn muốn:
Ví dụ
fun main() {
myFunction()
myFunction()
myFunction()
}
// I just got executed!
// I just got executed!
// I just got executed!
Hãy tự mình thử » Thông số chức năng
Thông tin có thể được chuyển đến các hàm dưới dạng tham số.
Các tham số được chỉ định sau tên hàm, bên trong dấu ngoặc đơn. Bạn có thể thêm bao nhiêu tham số tùy thích, chỉ cần phân tách chúng bằng dấu phẩy. Chỉ cần lưu ý rằng bạn phải chỉ định loại của từng tham số (Int, String, v.v.).
Ví dụ sau có hàm lấy String
có tên fname làm tham số. Khi hàm được gọi, chúng ta chuyển vào tên, tên này được sử dụng bên trong hàm để in tên đầy đủ:
Ví dụ
fun myFunction(fname: String) {
println(fname + " Doe")
}
fun main() {
myFunction("John")
myFunction("Jane")
myFunction("George")
}
// John Doe
// Jane Doe
// George Doe
Hãy tự mình thử » Khi một tham số được truyền vào hàm, nó được gọi là một đối số . Vì vậy, từ ví dụ trên: fname
là một tham số , trong khi John
, Jane
và George
là các đối số .
Nhiều thông số
Bạn có thể có bao nhiêu tham số tùy thích:
Ví dụ
fun myFunction(fname: String, age: Int) {
println(fname + " is " + age)
}
fun main() {
myFunction("John", 35)
myFunction("Jane", 32)
myFunction("George", 15)
}
// John is 35
// Jane is 32
// George is 15
Hãy tự mình thử »Lưu ý: Khi làm việc với nhiều tham số, lệnh gọi hàm phải có cùng số lượng đối số như số lượng tham số và các đối số phải được truyền theo cùng một thứ tự.
Giá trị trả về
Trong các ví dụ trên, chúng ta đã sử dụng các hàm để xuất ra một giá trị. Trong ví dụ sau, chúng ta sẽ sử dụng hàm để trả về một giá trị và gán nó cho một biến.
Để trả về một giá trị, hãy sử dụng từ khóa return
và chỉ định kiểu trả về sau dấu ngoặc đơn của hàm ( Int
trong ví dụ này):
Ví dụ
Một hàm có một tham số Int
và kiểu trả về Int
:
fun myFunction(x: Int): Int {
return (x + 5)
}
fun main() {
var result = myFunction(3)
println(result)
}
// 8 (3 + 5)
Hãy tự mình thử »Sử dụng hai tham số:
Ví dụ
Một hàm có hai tham số Int
và kiểu trả về Int
:
fun myFunction(x: Int, y: Int): Int {
return (x + y)
}
fun main() {
var result = myFunction(3, 5)
println(result)
}
// 8 (3 + 5)
Hãy tự mình thử »Cú pháp ngắn hơn cho giá trị trả về
Ngoài ra còn có một cú pháp ngắn hơn để trả về giá trị. Bạn có thể sử dụng toán tử =
thay vì return
mà không chỉ định kiểu trả về. Kotlin đủ thông minh để tự động tìm ra nó là gì:
Ví dụ
fun myFunction(x: Int, y: Int) = x + y
fun main() {
var result = myFunction(3, 5)
println(result)
}
// 8 (3 + 5)
Hãy tự mình thử »