4. 変数で値を覚える

工房へ伝える言葉やあとで使う数を覚えておくには「変数」を使います。値に名前を付けて術式の中で使えるようにします。まずはログに残す言葉を覚えさせてみましょう。

文字列に名前を付ける

ArcaneScript
public class Program : ArcaneProgram
{
    public void OnStart()
    {
        string message = "Hello!";
        Workshop.Log.Write(message);
    }
}

string message = "Hello!";はmessageという名前の変数を用意し、Hello!という文字列を入れる文です。変数を用意することを「宣言」と呼びます。

部分意味
string文字列を入れる変数
message自分で付けた名前
= "Hello!"最初に入れる値
;文の終わり

次のWriteでは引用符のないmessageを使っています。表示されるのは変数の中身であるHello!です。messageという名前自体は表示されません。

値を入れ直す

宣言した後にmessage = "Ready";を実行すると、中身がReadyへ変わります。値を入れる操作を「代入」と呼びます。新しい変数ではないので、stringをもう一度付けません。

変数には「型」という値の種類があります。stringは文字列、intは整数を扱います。たとえばint count = 3;は3という数を入れる宣言です。3と"3"は数と文字列という違う型です。

名前は半角英字で始めると読みやすく書けます。messageとMessageは別の名前です。同じ変数を使う場所では綴りをそろえてください。

練習問題

例のWriteの直前へmessage = "Ready";を一行追加してください。何が表示されるでしょうか。

解答例を表示する解答例を閉じる

Readyが表示されます。先にHello!を入れ、その後Readyへ入れ直してから表示するためです。

ArcaneScript
public class Program : ArcaneProgram
{
    public void OnStart()
    {
        string message = "Hello!";
        message = "Ready";
        Workshop.Log.Write(message);
    }
}