スマートデバイスプログラミング 第2回
Unityで開発してみよう(その1、基礎文法編)

C#でのプログラムの記載例

変数

JavaやJavaScriptと、おおむね同じ使い方で使えます。
JavaScriptでは型を省略しても動いてくれますが、C#では
build時にエラーが出ることが多いので注意しましょう。

<覚えておいて欲しい型>
int a=0; //整数
float b=0.3f; //浮動小数点数型:数値の後にfを付けます。
string s="time"; //文字列:「"」「"」でくくります。
bool b=true; //ブーリアン型。trueかfalseが入ります
<場合によっては使うかもしれない型>
char c = 'a'; //文字。半角文字列を扱います。「'」でくくります。
double = 0.01; //倍精度浮動小数点数型。

条件分岐

if文

if(条件) {
  aaa;
}
↑「条件」を満たしている時はaaaを実行します。

if(条件) {
  aaa;
} else {
  bbb;

}
↑「条件」を満たしている時はaaaを、満たしていない時はbbbを実行します。

条件のサンプル

//整数(int a)のサンプル

if( a == 1) //aがだったら
if( a >= 1) //aが1以上だったら
if( a <= 1) //aが1以下だったら
if( a != 1) //aが1以外の値だったら

if( a > 1) //aが2以上だったら
if( a < 1) //aが0以下だったら

// if( a = 1)と書いてしまうと(イコール1個のみだと)ビルド時に文法エラーが出てしまうので注意しましょう


//ブーリアン型(bool b)のサンプル

if( b ) //bがtrueだったら
if( !b ) //bがfalseだったら

//複数の条件を組み合わせたい場合は && や || を使います

if ( 条件1 && 条件2 ) //条件1を満たす、かつ、条件2を満たす
if ( 条件1 || 条件2 ) //条件1を満たす、または、条件2を満たす


swtich文

値によって処理を切り替えたい場合は、switch文が使えます。
switch(変数名){
 case 1:
   aaa;
   break;
 case 2:
   bbb;
   break;
 default:
   ccc;
   break;
}
↑変数の値が1だったらaaaを、2だったらbbbを、それ以外の値だったらcccを実行
 break;を忘れると次の命令も実行してしまうので忘れないよう注意しましょう。
 (aaaの次の行のbreakを忘れると、bbbも実行されます)

反復処理

for文

for(aaa;bbb;ccc){
  ddd;
}
↑まずaaaを実行します。条件bbbを満たす限り、dddが繰り返し実行されます。
 1回実行するごとにcccが呼ばれ、bbbが満たされているか再度判断されます。

for(int i=0;i<3;i++){
  aaa;
}
↑aaaの処理を3回繰り返します

while文

while(aaa){
  bbb;
}
↑条件aaaが満たされる限り、bbbを繰り返し実行します。

配列

[]付きの配列

int[] aaa = new int[3];
string[] bbb = new string[5];
string[] ccc = new string[]{"abc","def","ghi"};

aaa[0] = 1;
bbb[1] = "test";

for(int i=0;i<3;i++){
  aaa[i] = i;
}

LIST

要素数が変わる場合はLISTも使えます。
(この授業では基本使いません。使いたい方は各自で調べましょう)

using System.Collections.Generic; //プログラムの冒頭に1行追加が必要

List aaa = new List();

aaa.Add("abc");
aaa.Add("def");
aaa.Add("ghi");

int size = aaa.Count; //要素の数が分かる

aaa[0] = "ghi"; //上書き