熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

哈希表(HashTable)

2022-06-13   來源: .NET編程 

  HashTable 通常稱為哈希表它表示鍵(key)/值(value)對的集合

  HashTable 的構造函數

  HashTable()              //初始化為個元素的空實例

  HashTable(Int)      //初始化為int 個元素的新實例

  例子

  HashTable myHashTable = new HashTable();

  HashTable myHashTable = new HashTable();

  HashTable 元素的特點

  HashTable 獲取元素的方法是使用訪問鍵所對應的值即HashTable[key]下面是例子

  using System;

  using SystemCollectionsGeneric;

  using SystemText;

  using SystemCollections;

  namespace Example_

  {

  class Program

  {

  static void Main(string[] args)

  {

  Hashtable myHashTable = new Hashtable();

  //插入相應的鍵和值組成的元素

  myHashTableAdd(H);

  myHashTableAdd(e);

  myHashTableAdd(l);

  myHashTableAdd(l);

  myHashTableAdd(o);

  myHashTableAdd(int);

  myHashTableAdd(double);

  myHashTableAdd(booltrue);

  //修改相應的鍵和值組成的元素

  myHashTable[int] = ;

  myHashTable[double] = ;

  myHashTable[bool] = false;

  //輸出相應的鍵和值組成的元素

  ConsoleWriteLine(myHashTable[]);

  ConsoleWriteLine(myHashTable[]);

  ConsoleWriteLine(myHashTable[]);

  ConsoleWriteLine(myHashTable[]);

  ConsoleWriteLine(myHashTable[]);

  ConsoleWriteLine(myHashTable[int]);

  ConsoleWriteLine(myHashTable[double]);

  ConsoleWriteLine(myHashTable[bool]);

  ConsoleReadLine();

  }

  }

  }

  程序運行結果如下

  H

  e

  l

  l

  o

  

  

  False

  Hashtable 元素的操作

  ● 添加操作的定義如下

  public virtual void Add(object keylbject value)

  注意不能為空值可以為空

  ● 刪除操作

  HashTableClear()         //刪除所有元素不帶任何參數清空後HashTable的元素個數為

  示例myHashTableClear()

  HashTableRemove()    //刪除指定所在的元素

  其定義如下

  public virtual void Remove(Object key)

  示例myHashTableRemove(int);

  如果HashTable 為只讀時進行上述操作會出現異常

  Hashtable 的遍歷

  由於Hashtable 的鍵值對屬於DictionaryEntry類型所以在用foreach 遍歷Hashtable 時類型參數是DictionaryEntry看下面示例

  foreach (DictionatyEntrymyDE in myHashTable)

  {

  ConsoleWriteLine(\t{}\t{}myDEKeymyDEValue);    //注意讀取鍵值的方法

  }

  Hashtable 的查詢

  Hashtable 查詢有以下方法

  ● HashtableContains            //判斷HashTable中是否包含指定

  ● HashtableContainsKey      //判斷HashTable中是否包含指定同上

  ● HashtableContainsValue   //判斷HashTable中是否包含指定值很好!

  示例

  ConsoleWriteLine(myHashTable 包含鍵{}myHashTableContains());

  ConsoleWriteLine(myHashTable 包含鍵{}myHashTableContainsKey());

  ConsoleWriteLine(myHashTable 包含值true{}myHashTableContainsValue(true));

  ConsoleWriteLine(myHashTable 包含值{}myHashTableContainsValue());

  HashTable 表的優點

  HashTable是SystemCollections命名空間提供的一個容器HashTable中的key/value均為object類型所以HashTable可以支持任何類型的key/value鍵/值對

  HashTable的優點就在於其索引的方式速度非常快


From:http://tw.wingwit.com/Article/program/net/201311/12349.html
  • 上一篇文章:

  • 下一篇文章:
  • 推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.