Menu
CoddyTech

Toán tử ba ngôi

Thuộc phần Kiến thức nền tảng trong hành trình GDScript của Coddy. Bài học 25 trên 92.

toán tử ba ngôi (ternary operator) chọn một trong hai giá trị dựa trên một điều kiện. Toán tử này có ba phần:

value_if_true if condition else value_if_false

Ví dụ:

var age := 20
var status := "Adult" if age >= 18 else "Minor"
print(status) # Adult

GDScript kiểm tra age >= 18. Điều kiện này là true, nên status nhận giá trị "Adult". Nếu age là 15, status sẽ nhận giá trị "Minor".

Giá trị có thể là số hoặc biến, và kết quả có thể được đưa thẳng vào print():

var x := 10
var y := 20
var bigger := x if x > y else y # 20
print("Pass" if 75 >= 60 else "Fail") # Pass

Hãy đặt hai giá trị cùng kiểu dữ liệu. var r := 1 if ok else "one" gây ra lỗi vì GDScript không thể xác định r là int hay String.

Điều kiện (condition) có thể dùng các toán tử logic: "Open" if has_key and level >= 5 else "Locked".

challenge icon

Thử thách

Dễ

Một người chơi có coins và muốn mua một món đồ có giá price. Hai biến đều đã được khai báo sẵn cho bạn.

Khai báo biến status bằng toán tử ba ngôi:

  • "Purchase complete" nếu coins lớn hơn hoặc bằng price
  • "Not enough coins" nếu không

Dòng print() in ra status. Với các giá trị đã cho, đầu ra là:

Not enough coins

Tự làm thử

extends Node

func _ready():
	var coins := 150
	var price := 200
	# Khai báo status bằng toán tử ba ngôi (ternary operator) bên dưới

	# Đừng thay đổi dòng bên dưới
	print(status)
quiz iconTự kiểm tra

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

Tự luyện tập: Trình biên dịch GDScript online