ホームページ  >  記事  >  php教程  >  コレクションを使用して関連データを整理する

コレクションを使用して関連データを整理する

WBOY
WBOYオリジナル
2016-07-06 13:30:251194ブラウズ

コレクションの概要 コレクションは、単に配列のアップグレードされたバージョンです。セットの長さ (つまり、セット内の最大要素数) を動的に定義して維持できます。 ArrayList ArrayList は配列と非常によく似ています。これを配列リストと呼ぶ人もいます。その容量は必要に応じて動的に拡張でき、コレクション容量の拡張に応じてインデックスが再作成されます

コレクションの概要

コレクションは、単に配列のアップグレードされたバージョンです。セットの長さ (つまり、セット内の最大要素数) を動的に定義して維持できます。

ArrayList

ArrayList は配列に非常に似ています。これを配列リストと呼ぶ人もいます。その容量は必要に応じて動的に拡張でき、コレクション容量の拡張に応じてインデックスが再割り当ておよび調整されます。言い換えれば、ArrayList コレクション内の要素の添え字は不確実であり、可変です。

ArrayList クラスは System.Collections 名前空間に属しており、さまざまなオブジェクト (リスト、キュー、ビット配列、ハッシュ テーブル、辞書など) のコレクションを定義するインターフェイスとクラスが含まれています。

文法:

Using System.Collections;<span style="color: #008000">//</span><span style="color: #008000">导入命名空间
</span><span style="color: #008000">//</span><span style="color: #008000">定义ArrayList对象</span>
ArrayList    ArrayList集合名称=<span style="color: #0000ff">new</span>  ArrayList(【长度】);

ArrayList の一般的なメソッドとプロパティ

説明 カウント
属性名
ArrayListに含まれる実際の要素数を取得する
戻り値の型 offオフ 追加(オブジェクト値) RemoveAt(int インデックス)削除(オブジェクト値)クリア()ハッシュテーブルArrayListでは、インデックスを通じてコレクション内の要素にアクセスできますが、コレクション内の要素のインデックスが頻繁に変わると、各要素の位置(インデックス)を見つけるのが非常に面倒になります
メソッド名 int
ArrayListの最後にオブジェクトを追加します ボイド
指定されたインデックスにある要素を ArrayList から削除します ボイド
ArrayList から特定のオブジェクトを削除する ボイド
ArrayList からすべての要素を削除します

C# は HashTable と呼ばれるデータ構造を提供します。これは通常ハッシュ テーブルと呼ばれますが、辞書に非常に似ているため、辞書という名前が付けられています。単語の詳細については、HashTable はキー (Key) と値 (Value) でデータを整理します

HashTable の一般的に使用されるプロパティとメソッド

説明
数える HashTable に含まれるキーと値のペアの数を取得します
キー HasTable のキーを含むコレクションを取得します
価値観 HasTableの値を含むコレクションを取得します

  返回值类型 方法名称                             说明
void Add(Object Key,Object Value) 将带有指定键和值得元素添加到HashTable中
Void Remove(Object  Key) 从HashTable中移除带有特定键的元素
Void Clear() 清除HashTable中的所有元素
泛型和泛型集合

泛型和泛型集合

通过ArrayList和HashTable存储的数据都会转换成Object类型,这就意味着它可以在一个集合中存储不同的类型元素,在遍历集合时就有可能引发强制类型转换错误的问题。而泛型集合是类型安全的,在定义时就先定了集合中的元素类型,下面将详细讲解泛型和泛型集合。

泛型

泛型是C#2.0 中的一个新特性,泛型引入了一个概念:类型参数,通过使用类型参数(T)减少了运行时强制类型转换或装箱拆箱操作的风险,同过泛型可以最大限度的重用代码,保护类型安全及提高性能,它的最常见应用是创建集合类,可以约束集合类中的元素类型。个比较典型的泛型集合是LIst和Dictionary,下面进行详细讲解、

泛型集合

在System.Collections.Generic命名空间中定义了去多泛型集合类这些类可以代替上面的ArrayList

定义一个List集合的语法如下:

List   集合名称=new   List();

”中的T可以对集合中的元素类型进行约束,T表名集合管理的元素类型。

List和ArrayList的区别

  1. List对保存的元素类型做约束,ArrayList可以保存任何类型的元素
  2. list保存值类型元素不会进行装箱拆箱操作而ArrayList会

泛型集合Dictionary

泛型集合Dictionary可以代替上面的HashTable

定义一个泛型集合Dictionary的语法

Dictionary  集合名称=new   Dictionary();

在””中K表示集合中Key的类型,V表示Value的类型,他们的含义和List是相同的

    1. Dictionary对保存的元素类型做约束,HashTablet可以保存任何类型的元素
    2. Dictionary保存值类型元素不会进行装箱拆箱操作而HashTablet会

泛型类

在集合中使用泛型只是泛型多种应用的一种,在类、方法等方面已有泛型的应用

定义一个泛型类的语法如下:

<span style="color: #0000ff">public</span> <span style="color: #0000ff">class</span>     类名<T><span style="color: #000000">
{
    </span><span style="color: #008000">//</span><span style="color: #008000">....</span>
}

T指类型参数,代表具体的数据类型,可以是值类型也可以是引用类型


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。