哈希表

   Hashtable()为哈希表,可以在保存值的同时保存关键字,便于以后搜索,如存储美国州名的同时存储州的简写,如简写为"CA" ,州名为"California",其有Add,Clear,Clone,CopyTo,ContainsKey等方法:

/*
  Example11_7.cs illustrates the use of the Hashtable methods
*/

using System;
using System.Collections;

class Example11_7
{

  public static void Main()
  {

    // create a Hashtable object
    Hashtable myHashtable = new Hashtable();

    // add elements containing US state abbreviations and state
    // names to myHashtable using the Add() method
    myHashtable.Add("AL", "Alabama");
    myHashtable.Add("CA", "California");
    myHashtable.Add("FL", "Florida");
    myHashtable.Add("NY", "New York");
    myHashtable.Add("WY", "Wyoming");

    // display the keys for myHashtable using the Keys property
    foreach (string myKey in myHashtable.Keys)
    {
      Console.WriteLine("myKey = " + myKey);
    }

    // display the values for myHashtable using the Values property
    foreach(string myValue in myHashtable.Values)
    {
      Console.WriteLine("myValue = " + myValue);
    }

    // use the ContainsKey() method to check if myHashtable
    // contains the key "FL"
    if (myHashtable.ContainsKey("FL"))
    {
      Console.WriteLine("myHashtable contains the key FL");
    }

    // use the ContainsValue() method to check if myHashtable
    // contains the value "Florida"
    if (myHashtable.ContainsValue("Florida"))
    {
      Console.WriteLine("myHashtable contains the value Florida");
    }

    // use the Remove() method to remove FL from myHashtable
    Console.WriteLine("Removing FL from myHashtable");
    myHashtable.Remove("FL");

    // get the number of elements in myHashtable using the Count
    // property
    int count = myHashtable.Count;

    // copy the keys from myHashtable into an array using
    // the CopyTo() method and then display the array contents
    Console.WriteLine("Copying keys to myKeys array");
    string[] myKeys = new string[count];
    myHashtable.Keys.CopyTo(myKeys, 0);
    for (int counter = 0; counter < myKeys.Length; counter++)
    {
      Console.WriteLine("myKeys[" + counter + "] = " +
        myKeys[counter]);
    }

    // copy the values from myHashtable into an array using
    // the CopyTo() method and then display the array contents
    Console.WriteLine("Copying values to myValues array");
    string[] myValues = new string[count];
    myHashtable.Values.CopyTo(myValues, 0);
    for (int counter = 0; counter < myValues.Length; counter++)
    {
      Console.WriteLine("myValues[" + counter + "] = " +
        myValues[counter]);
    }

  }

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值