C#動的配列の方法
プログラミングをする上で配列は何かと便利なのですが、ひとつだけ大きな欠点
があります。それはサイズが固定されているということです。実際のプログラムでは
最初に配列のサイズを決めることができないような場合がたくさんでてきます。
たとえばユーザからの入力文字を次々に配列に格納していくような場合です。
あらかじめユーザの入力する文字列のサイズを決めておくことができません。
C#ではサイズの決まっていない配列を強力にサポートするクラスがクラスライブラリ
に用意されています。主にSystem.Collections名前空間に配置されています。
クラス 説明
ArrayList 普通の動的配列です
HashTable 添え字番号の代わりにキーによってアクセスできる動的配列
Queue 先読み先出しの動的配列
SortedList キーによって順番が保たれる動的配列
Stack 後入れ先出しの動的配列
System.Collectionsの主なクラス
ArrayListがもっとも良く使われる動的配列でしょう。ArrayListを例に使い方を見ていきたいと思います。
1: ArrayList list = new ArrayList(); // listという名前の
ArrayListを作成
2: list.Add("First Item"); //First Itemという文字列を
ArrayListに追加
3: list.Add("Second Item"); //Second Itemという文字列を
ArrayListに追加
4: string firstItem = (string)list[0]; //stringにキャストが
必要
5: Console.WriteLine(firstItem);
1行目ではlistという名前のArrayListを作成しています。2行目と3行目は作成
したArrayListであるlistにデータを追加しています。データの追加にはAddメソッド
を使用しています。ここで配列には存在した"型の指定"が動的配列ではないことに
お気づきかもしれません。そうです、動的配列は便利なことに何でも入れることが
できるのです。これをboxingといいます。その代わりにデータを取り出したときに
型を指定してやる必要があります。4行目を見てみましょう。list[0]で取り出した
データはそのままでは型が不明です。そのため取り出した後にデータを使用するため
には型を指定しなおす必要があります。(string)というのが型指定です。取り出した
データをstring型とみなしますという宣言にあたります。C#の世界ではこれを
unboxingと呼んでいます。これが基本的なArrayListの使い方です。
トップページ
> 特殊文字とは
> 起動時のパラメータ取得方法
> C#プログラミング文字列を連結する方法
> C#でのファイルの書き込み
> 文字列の分割の方法
> C#のファイルパス名文字列から、ファイル名や拡張子を抜きだす方法
> C#文字列扱いの方法etc
> ダイアログで複数ファイル名を読む方法
> 動的配列の取り方
> チェックリストボックスでチェックされたものを調べる方法
> C#ファイルからの入力
> 文字列の検索方法
> 四捨五入する方法
> 小数点操作のいろいろ
> 型変換による精度保持の方法
> 内部変換誤差のお話
> C#で数値を文字列に変換する方法
> 算術演算 (関数) の記述
> C#ファイルの移動
> C#フォームをアクティブにする方法
> Formを必ず最前面に移動しその Form にフォーカスを移動する
> C#で時間差表示する方法
> Form の多重起動を防ぐ
> Form を最前面に\配置
> Formを自動で閉じる
> VisualStudioでセットアップモジュールを作る方法
> *
> *
> *
> (以下は用語説明文)
> .NET Framework