亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> C语言

带有示例的 C# 哈希表

什么是 C# 中的 Hashtable?

哈希表是一个特殊的集合,用于存储键值项。因此,哈希表不会像堆栈、数组列表和队列那样只存储一个值,而是存储两个值。这两个值构成了哈希表的一个元素。

下面是一些哈希表值的示例。

{ "001" , ".Net" }
{ "002" , ".C#" }
{ "003" , "ASP.Net" }

上面我们有 3 个键值对。每个元素的键分别是 001、002 和 003。每个键值对的值分别为“.Net”、“C#”和“ASP.Net”。

让我们更详细地看一下 Hashtable 集合可用的操作。

哈希表的声明

Hashtable 的声明如下所示。 Hashtable 是在 Hashtable 数据类型的帮助下创建的。 “new”关键字用于创建 Hashtable 的对象。然后将该对象分配给变量 ht。

Hashtable ht = new Hashtable()

向哈希表添加元素

Add 方法用于将元素添加到队列中。该语句的一般语法如下所示

HashTable.add("key","value")

示例 1:

请记住,哈希表的每个元素都包含 2 个值,一个是键,另一个是值。

现在,让我们看看这在代码级别上是如何工作的。下面提到的所有代码都将写入我们的控制台应用程序。

代码将写入我们的 Program.cs 文件。在下面的程序中,我们将编写代码来看看我们如何使用上述方法。

现在在我们的示例中,我们将只看如何创建一个 hashtable ,将元素添加到 hashtable 并相应地显示它们。

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DemoApplication
{
 class Program
 {
  static void Main(string[] args)
  {
   Hashtable ht = new Hashtable();
   ht.Add("001",".Net");
   ht.Add("002","C#");
   ht.Add("003","ASP.Net");

   ICollection keys = ht.Keys;

   foreach (String k in keys)
   {
    Console.WriteLine(ht[k]);
   }
    Console.ReadKey();
   }
 }
} 

代码说明:-

  1. 首先,我们使用关键字“New”使用 Hashtable 数据类型声明 hashtable 变量。变量定义的名称是'ht'。

  2. 然后我们使用 Add 方法将元素添加到哈希表中。请记住,在向哈希表添加内容时,我们需要同时添加键和值元素。

  3. 没有直接的方法来显示哈希表的元素。

  1. 接下来对于每个键值,我们使用语句 ht[k] 获取哈希表中的关联值。

如果上面的代码输入正确,程序运行起来会显示如下输出。

输出:

让我们看看更多可用于哈希表的方法。

包含密钥

此方法用于查看 Hashtable 中是否存在键。以下是该语句的一般语法。如果 key 存在,该语句将返回 true,否则返回 false。

Hashtable.Containskey(key)

包含值

此方法用于查看 Hashtable 中是否存在 Value。以下是该语句的一般语法。如果 Value 存在,该语句将返回 true,否则将返回 false。

Hashtable.ContainsValue(value)

示例 2:

让我们更改控制台应用程序中的代码,以展示我们如何使用“Containskey”和“ContainsValue”方法。

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DemoApplication
{
 class Program
 {
  static void Main(string[] args)
  {
   Hashtable ht = new Hashtable();
   ht.Add("001",".Net");
   ht.Add("002","C#");
   ht.Add("003","ASP.Net");

   Console.WriteLine(ht.ContainsKey("001"));
   Console.WriteLine(ht.ContainsValue("C#"));
   Console.ReadKey();
   }
 }
}

代码说明:-

  1. 首先,我们使用 ContainsKey 方法查看键是否存在于哈希表中。如果键存在于哈希表中,此方法将返回 true。此方法应返回 true,因为该键确实存在于哈希表中。
  2. 然后我们使用 ContainsValue 方法查看该值是否存在于哈希表中。此方法将返回“true”,因为该值确实存在于哈希表中。

如果上面的代码输入正确,程序运行起来会显示如下输出。

输出:

从输出中可以清楚地看到,被搜索的键和值都存在于哈希表中。

总结

哈希表用于存储由键值对组成的元素。要访问元素的值,您需要知道元素的键。


C语言

  1. C# 表达式、语句和块(附示例)
  2. C++ do...while 循环与示例
  3. 带有示例的 C++ 指针
  4. C++ Char 数据类型及示例
  5. 带有示例的 C++ 运算符重载
  6. 带有程序示例的 C++ 函数
  7. C# 集合教程与示例
  8. 带有示例的 Python 字符串计数()
  9. 带有示例的 Python round() 函数
  10. 带有示例的 Python map() 函数
  11. Python Timeit() 与示例
  12. 带有示例的 Python 列表计数()