C# 入門 & 実践 / C sharp
4-2. 配列 params キーワード
配列を作成しない場合でも params を使うとOK。
params 有り無しを比較してみる。
class Tester
{
static void Main()
{
Tester t = new Tester();
int[] points = { 1, 2, 3, 4, 5 };
// OK
t.LoopPoints(points);
// NG
// params キーワードがないので
// t.LoopPoints(9,8,7);
// OK
// params があるのでそのまま利用できる!
t.ParamsLoopPoints(9,8,7);
}
public void LoopPoints(int[] points)
{
foreach (int p in points)
{
Console.WriteLine("{0}", p.ToString());
}
}
public void ParamsLoopPoints( params int[] points)
{
foreach (int p in points)
{
Console.WriteLine("{0}", p.ToString());
}
}
}
クラスの配列を引数に利用。
こちらは、配列、インスタンスが必要なので params はあまり意味ない。
class Tester
{
static void Main()
{
Player[] players = new Player[12];
// この段階では、インスタンスは生成されていない。
// 配列分インスタンスを生成
for (int i = 0; i < players.Length; i++)
{
players[i] = new Player("Mr. " + i.ToString(), i * 5);
}
// 配列をメソッドに渡す!
Tester t = new Tester();
t.LoopPlayers(players);
}
// 引数に配列を使用!
public void LoopPlayers( Player[] players )
{
foreach (Player p in players)
{
p.PrintPoint();
}
}
}
4-1. 配列 System.Array «
4. C# 入門 Level 2 »
4-3. 配列 多次元配列
C# 入門 & 実践 / C sharp