Trả về một giá trị
Thuộc phần Kiến thức nền tảng trong hành trình GO của Coddy. Bài học 55 trên 109.
Hàm có thể trả về giá trị cho đoạn code đã gọi chúng. Nhờ vậy, hàm có thể tính toán kết quả rồi trả lại.
Để tạo một hàm trả về giá trị, hãy thêm kiểu trả về sau danh sách tham số:
func multiply(x int, y int) int {
result := x * y
return result
}
func main() {
product := multiply(4, 5)
fmt.Println("4 × 5 =", product)
}Khi chạy chương trình này, kết quả là:
4 × 5 = 20Từ khóa return gửi giá trị về nơi gọi hàm, và bạn có thể lưu giá trị trả về vào một biến.
Thử thách
Người mớiTrong thử thách này, bạn sẽ luyện tập tạo một hàm trả về một giá trị duy nhất. Bạn cần hoàn thành hàm getGreeting, hàm này trả về lời chào dựa trên thời gian trong ngày.
Hàm cần trả về "Good morning" nếu giờ trước 12, "Good afternoon" nếu giờ nằm trong khoảng từ 12 đến 17 (bao gồm cả 12 và 17), và "Good evening" trong các trường hợp khác.
Tự làm thử
package main
import "fmt"
// getGreeting trả về lời chào dựa trên giờ trong ngày
func getGreeting(hour int) string {
// TODO: Trả về "Good morning" nếu hour nhỏ hơn 12
// TODO: Trả về "Good afternoon" nếu hour từ 12 đến 17, tính cả 12 và 17
// TODO: Trả về "Good evening" cho các giờ còn lại
// Viết code ở đây
}
func main() {
// Kiểm tra hàm (function) với các giờ khác nhau
morningHour := 8
afternoonHour := 15
eveningHour := 20
fmt.Println("At", morningHour, "hours:", getGreeting(morningHour))
fmt.Println("At", afternoonHour, "hours:", getGreeting(afternoonHour))
fmt.Println("At", eveningHour, "hours:", getGreeting(eveningHour))
}Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Kiến thức nền tảng
4Toán tử so sánh và logic
Toán tử so sánh, phần 1Toán tử so sánh, phần 2Toán tử AND logicToán tử OR logicToán tử NOT logicCơ bản về thứ tự ưu tiên của toán tửÔn tập: thực hiện phép so sánh7Luồng điều khiển: vòng lặp
Giải thích vòng lặp `for`Vòng lặp `for` cơ bảnVòng lặp `for` chỉ có điều kiệnTừ khóa `break`Từ khóa `continue`Vòng lặp lồng nhauÔn tập: lặp lại hành động2Biến và các kiểu dữ liệu cơ bản
Biến là gìSuy luận kiểu với `:=`Số nguyên (int)Số dấu phẩy độngGiá trị BooleanChuỗiGiá trị 0Hằng sốQuy ước đặt tênÔn tập: biến và kiểu dữ liệu5Đầu vào/đầu ra cơ bản
Đầu ra có định dạngĐộng từ định dạngIn các kiểu dữ liệuNhận đầu vào cơ bản từ người dùngÔn tập: đầu vào và đầu ra8Hàm
Tìm hiểu về hàmKhai báo hàmGọi hàmTham số của hàmTrả về một giá trịTrả về nhiều giá trịGiá trị trả về có tênNhững điều cơ bản về phạm vi của hàmÔn tập: Tạo code có thể tái sử dụng3Toán tử cơ bản
Toán tử số họcToán tử chiaToán tử moduloToán tử gánToán tử gán kết hợpTăng và giảmÔn tập: Tính toán6Luồng điều khiển: câu lệnh điều kiện
Câu lệnh `if`Từ khóa `else`Từ khóa `else if`Biến bị che khuất trong `if`Khởi tạo biếnCâu lệnh `switch``switch` có biểu thức`switch` không có biểu thứcTừ khóa `fallthrough`Ôn tập: đưa ra quyết địnhTự luyện tập: Trình biên dịch Go online