ArrayListは便利なのでよく使うが、型のキャストが必要なので注意が必要。
ArrayList
private
void button_ArrayList_Click(object
sender, EventArgs e) {
System.Collections.ArrayList
_ArrayList = new System.Collections.ArrayList();
/*ArrayListはobjectなので文字でも数値でもOK*/
_ArrayList.Add("aaaaa");
_ArrayList.Add("bbbbb");
_ArrayList.Add(100); /*実行時にエラー*/
for (int
i = 0; i < _ArrayList.Count; i++) {
Console.WriteLine("index:{0}",
i);
string a = (string)_ArrayList[i];
Console.WriteLine("結果:{0}",
a);
}
}
List
private void
button_List_Click(object sender,
EventArgs e) {
/*明確にstringを指定*/
System.Collections.Generic.List<string>
_List = new
List<string>();
_List.Add("aaaaa");
_List.Add("bbbbb");
/*コンパイルエラー*/
//_List.Add(100); /*実行前にエラーがわかる*/
for (int
i = 0; i < _List.Count; i++) {
Console.WriteLine("index:{0}",
i);
/*キャストはいらない*/
string a = _List[i];
Console.WriteLine("結果:{0}",
a);
}
}