C#でNameValueCollectionクラスを活用する方法を解説
NameValueCollectionクラスとは
C#のNameValueCollectionクラスは、System.Collections.Specialized名前空間に属するコレクションクラスです。最大の特徴は、1つのキーに対して複数の値を設定できる点にあります。通常のHashtableやDictionaryでは1つのキーに1つの値しか格納できませんが、NameValueCollectionを使えば、同じキーに関連付けられた複数の値を簡単に管理できます。
ここからは、C#プログラムでNameValueCollectionを使用する具体的な方法を見ていきましょう。
コレクションへの要素の追加
まず、NameValueCollectionを作成し、Addメソッドでキーと値のペアを追加します。以下は、コレクションを生成して返すメソッドの例です。
static NameValueCollection GetCollection() {
NameValueCollection myCollection = new NameValueCollection();
myCollection.Add("Tim", "One");
myCollection.Add("John", "Two");
myCollection.Add("Jamie", "Three");
return myCollection;
}Addメソッドの第1引数がキー、第2引数が値になります。なお、同じキーに対して再度Addメソッドを呼び出すと、既存のキーに新しい値が追加され、複数の値が1つのキーに紐づくことになります。
AllKeysプロパティですべてのキーを取得する
次に、GetCollection()メソッドで取得したコレクションに対して、「AllKeys」プロパティを使用すると、コレクション内のすべてのキーをstring型の配列として取得できます。
NameValueCollection myCollection = GetCollection();
foreach (string key in myCollection.AllKeys) {
Console.WriteLine(key);
}
このコードを実行すると、コンソールには以下のように各キーが出力されます。
Tim
John
Jamie
まとめ
NameValueCollectionは、1つのキーに複数の値を持たせたい場合に非常に便利なクラスです。Addメソッドで要素を追加し、AllKeysプロパティで全キーを列挙するだけで、直感的に操作できます。クエリ文字列やフォームデータなど、キーと複数の値を扱うシーンでぜひ活用してみてください。
-
Androidでシングルトンクラスを使う方法をサンプルコード付きで解説
シングルトンデザインパターンとは?実装例に入る前に、まず「シングルトンデザインパターン」についておさらいしておきましょう。シングルトン(Singleton)とは、あるクラスのインスタンス生成をアプリケーション全体で1つだけに制限するデザインパターンです。主な用途としては、同時実行(並行処理)の制御や、アプリケーションがデータストアへアクセスするための中心的なアクセスポイントの作成などが挙げられます。この記事では、Androidアプリでシングルトンクラスを実際に使う方法を、ステップごとのサンプルコードとともに解説します。手順1:新規プロジェクトを作成するAndroid StudioでFile →
-
AndroidのListViewでVectorクラスを使用する方法【初心者向け解説】
AndroidのListViewでVectorクラスを活用する方法 この記事では、AndroidアプリのListView(リストビュー)において、JavaのVectorクラスを使用してデータを管理・表示する方法を、実際のコード例とともに段階的に解説します。ユーザーが入力した名前をVectorに保存し、「保存」ボタンでリストに追加、「更新」ボタンでListViewを再描画するというシンプルなサンプルアプリを作成します。 手順1:新規プロジェクトを作成する まず、Android Studioで新しいプロジェクトを作成します。メニューから「File」→「New Project」を選択し、必要な項目を