Array

Arrayを生成する

最初に数を宣言して、順に入れていくパターン

1
2
3
4
5
int[] array = new int[10];
array[0] = 0;
array[1] = 1;
array[2] = 2;
...

最初から中身を入れて宣言するパターン

1
2
3
int[] array = new int[] {
  0, 1, 2
};
1
2
3
Vector2[] array = new Vector2[] {
  new Vector2(0, 0), new Vector2(1, 1), new Vector2(2, 2)
};

Arrayの要素を取り出す

1
int i = array[i];

Arrayの長さを確認する

1
print(array.Length);

連番のArrayを生成する

1
int[] numbers = Enumerable.Range (0, 10).ToArray ();

Arrayの中身をシャッフルする

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
public static T[] Shuffle<T>(this T[] array)
{
  var length = array.Length;
  var result = new T[length];
  Array.Copy(array, result, length);
  var random = new System.Random();
  int n = length;
  while (1 < n)
  {
    n--;
    int k = random.Next(n + 1);
    var tmp = result[k];
    result[k] = result[n];
    result[n] = tmp;
  }
  return result;
}

Arrayの中身をランダムに取得

1
2
3
4
public static T GetRandom<T>(this T[] self)
{
  return self[UnityEngine.Random.Range(0, self.Length)];
}