前回はDebug.Log
を用いて文字列の表示を行いました。次は数値の計算をして結果を表示してみましょう。
Unityプログラミング講座一覧はこちら
リテラル
プログラム内に直接書いた数字や文字列などの値をリテラルといいます。
文字列リテラル
前回、Hello Worldと表示するために以下のコードを書きました。
using UnityEngine;
class Test : MonoBehaviour
{
void Start()
{
// Hello Worldと表示する
Debug.Log("Hello World");
}
}
ここで書いた"Hello World"
が文字列リテラルになります。文字列のリテラルはダブルクォーテーションで"
を囲みます。
整数リテラル
整数の場合は数字を直接書けば整数リテラルになります。
using UnityEngine;
class Test : MonoBehaviour
{
void Start()
{
// 1と表示する
Debug.Log(1);
// マイナスもできる
Debug.Log(-5);
}
}
※前にも述べたように、コンポーネントとスクリプトのファイル名は同じにしてください。
小数リテラル
小数を書く場合は注意が必要です。Unityで小数を扱う場合はfを数字の末尾に記入します。
using UnityEngine;
class Test : MonoBehaviour
{
void Start()
{
// 1.1と表示する
Debug.Log(1.1f);
}
}
基本的な計算
書いた文字や数値をそのまま表示しても、あまりできることは増えません。せっかくコンピュータを使っているのですから計算させましょう。
四則演算子
計算に用いる記号を演算子と呼びます。C#での基本的な計算は以下の演算子を使用します。
記号 | 機能 |
+ | 足し算 |
– | 引き算 |
* | 掛け算 |
/ | 割り算 |
% | 割り算の余り |
使い方は算数と似ています。1通り、整数リテラルを使って計算してみます。
using UnityEngine;
class Test : MonoBehaviour
{
void Start()
{
Debug.Log(10 + 3); // 13 が表示される
Debug.Log(10 - 3); // 7 が表示される
Debug.Log(10 * 3); // 30 が表示される
Debug.Log(10 / 3); // 3 が表示される
Debug.Log(10 % 3); // 10を3で割った余りなので1が表示される
}
}
10 / 3
の答えは3.3333…となるのではなく3になっています。整数と整数の計算結果は整数になります。3.3333…を整数にするために3に切り捨てられます。
小数の結果を使いたければ、小数リテラルを使用します。小数と整数の計算結果は小数になります。例えば、10f / 3
とすれば3.3333…になります。
()を用いた式
複数の演算子を用いて計算することもできます。計算の優先順位は基本的に算数と同じです。掛け算・割り算は足し算・引き算よりも先に計算されます。
優先順位をつけたい場合は()を用います。複数の括弧になっても{}や[]は使いません。
using UnityEngine;
class Test : MonoBehaviour
{
void Start()
{
Debug.Log((1 + 2) * (3 - 4) / 2);
}
}
関係演算子
関係演算子は2つの値の大小などを調べる演算子です。結果はtrue
(真:正しい)かfalse
(偽:間違い)になります。
記号 | trueになる |
== | 左の値が右の値と等しい |
!= | 左の値が右の値と異なる |
> | 左の値が右の値より大きい |
>= | 左の値が右の値以上 |
< | 左の値が右の値より小さい |
<= | 左の値が右の値以下 |
using UnityEngine;
class Test : MonoBehaviour
{
void Start()
{
Debug.Log(1 == 2); // False が表示される
Debug.Log(1 != 2); // True が表示される
Debug.Log(1 > 2); // False が表示される
Debug.Log(1 >= 2); // False が表示される
Debug.Log(1 < 1); // False が表示される
Debug.Log(1 <= 1); // True が表示される
}
}
==
や!=
は文字列に対しても使用できます。
using UnityEngine;
class Test : MonoBehaviour
{
void Start()
{
Debug.Log("test" == "test"); // True が表示される
Debug.Log("test" != "test"); // False が表示される
}
}
まとめ
この記事では、リテラルと演算について学びました。現段階では、定数の計算や比較しかできません。演算は次に学ぶ変数と合わせて使うことで威力を発揮します。
Unityプログラミング講座一覧はこちら