Menu
CoddyTech

Konwersja typów

Część sekcji Podstawy ścieżki GDScript w Coddy. Lekcja 14 z 92.

Konwersja typów przekształca wartość z jednego typu na inny. W GDScript zapisujesz nazwę nowego typu i umieszczasz wartość w nawiasach: int(), float() lub str().

var whole := int(3.9) # 3
var decimal := float(5) # 5.0
var text := str(42) # "42"

int() usuwa część dziesiętną bez zaokrąglania: int(3.9) to 3, a int(-3.9) to -3.

Rzutowanie przekształca również tekst w liczby. "7" to String, więc nie można przypisać go do zmiennej int, dopóki go nie przekonwertujesz:

var level_text := "7"
var level: int = int(level_text) # 7
var price := float("2.5") # 2.5

Bez int() zapis var level: int = level_text powoduje błąd, ponieważ level_text przechowuje wartość typu String.

str() zamienia dowolną wartość na tekst: str(2.5) to "2.5", a str(true) to "true".

Tekst, który nie jest liczbą, nie zatrzymuje programu. int("abc") daje 0, więc nieoczekiwane 0 często oznacza, że tekst nie był liczbą.

challenge icon

Wyzwanie

Początkujący

Pod komentarzem utwórz trzy zmienne z przekonwertowanymi wartościami:

  • int_price: wartość price przekonwertowana na int
  • level: tekst w level_text przekonwertowany na int
  • coins_float: wartość coins przekonwertowana na float

Nie zmieniaj pozostałych wierszy. Program wypisuje:

Price: 99.99
Int Price: 99
Level: 7
Coins: 15.0

Spróbuj swoich sił

extends Node

func _ready():
	var price := 99.99
	var level_text := "7"
	var coins := 15
	# Przekonwertuj poniższe wartości
	
	# Nie zmieniaj poniższych wierszy
	print("Price: ", price)
	print("Int Price: ", int_price)
	print("Level: ", level)
	print("Coins: ", coins_float)
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Kompilator GDScript online