型変換
CoddyのGDScriptジャーニー「基礎」セクションの一部。レッスン 14/92。
型変換は、値をある型から別の型に変換します。GDScriptでは、新しい型の名前を書き、その値を括弧で囲みます。int()、float()、またはstr()です。
var whole := int(3.9) # 3
var decimal := float(5) # 5.0
var text := str(42) # "42"int()は丸めずに小数部分を取り除きます。int(3.9)は3、int(-3.9)は-3です。
キャストを使うと、テキストを数値に変換することもできます。"7"はStringなので、変換するまではint変数に代入できません。
var level_text := "7"
var level: int = int(level_text) # 7
var price := float("2.5") # 2.5int()がないと、var level: int = level_textはエラーになります。level_textにはStringが格納されているためです。
str() はあらゆる値をテキストに変換します。str(2.5) は "2.5" になり、str(true) は "true" になります。
数値ではないテキストがあっても、プログラムは停止しません。int("abc")は0を返すため、予期しない0が表示された場合、テキストが数値ではなかった可能性があります。
チャレンジ
初心者コメントの下に、変換した値を持つ変数を3つ作成します。
int_price:priceの値をintに変換したものlevel:level_textのテキストをintに変換したものcoins_float:coinsの値をfloatに変換したもの
ほかの行は変更しないでください。プログラムは次のように出力します。
Price: 99.99
Int Price: 99
Level: 7
Coins: 15.0自分で試してみよう
extends Node
func _ready():
var price := 99.99
var level_text := "7"
var coins := 15
# 以下の値を変換してください
# 以下の行は変更しないでください
print("Price: ", price)
print("Int Price: ", int_price)
print("Level: ", level)
print("Coins: ", coins_float)
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
基礎のすべてのレッスン
自分で練習してみよう: GDScriptオンラインコンパイラ