- C# 基础教程
- C# - 首页
- C# - 概述
- C# - 环境
- C# - 程序结构
- C# - 基本语法
- C# - 数据类型
- C# - 类型转换
- C# - 变量
- C# - 常量
- C# - 运算符
- C# - 决策机制
- C# - 循环
- C# - 封装
- C# - 方法
- C# - 可空类型
- C# - 数组
- C# - 字符串
- C# - 结构体
- C# - 枚举
- C# - 类
- C# - 继承
- C# - 多态
- C# - 运算符重载
- C# - 接口
- C# - 命名空间
- C# - 预处理器指令
- C# - 正则表达式
- C# - 异常处理
- C# - 文件I/O
C# - Hashtable 类
Hashtable 类表示一个键值对的集合,这些键值对是基于键的哈希码进行组织的。它使用键来访问集合中的元素。
当您需要使用**键**访问元素,并且您可以识别一个有用的键值时,可以使用哈希表。哈希表中的每个项目都具有键/值对。键用于访问集合中的项目。
Hashtable 类的属性和方法
下表列出了一些常用的**Hashtable**类的**属性**:
| 序号 | 属性和描述 |
|---|---|
| 1 | Count 获取Hashtable中包含的键值对的数量。 |
| 2 | IsFixedSize 获取一个值,该值指示Hashtable的大小是否固定。 |
| 3 | IsReadOnly 获取一个值,该值指示Hashtable是否为只读。 |
| 4 | Item 获取或设置与指定键关联的值。 |
| 5 | Keys 获取一个包含Hashtable中键的ICollection。 |
| 6 | Values 获取一个包含Hashtable中值的ICollection。 |
下表列出了一些常用的**Hashtable**类的**方法**:
| 序号 | 方法和描述 |
|---|---|
| 1 | public virtual void Add(object key, object value); 将具有指定键和值的元素添加到Hashtable中。 |
| 2 | public virtual void Clear(); 移除Hashtable中的所有元素。 |
| 3 | public virtual bool ContainsKey(object key); 确定Hashtable是否包含特定的键。 |
| 4 | public virtual bool ContainsValue(object value); 确定Hashtable是否包含特定的值。 |
| 5 | public virtual void Remove(object key); 从Hashtable中移除具有指定键的元素。 |
示例
下面的示例演示了这个概念:
using System;
using System.Collections;
namespace CollectionsApplication {
class Program {
static void Main(string[] args) {
Hashtable ht = new Hashtable();
ht.Add("001", "Zara Ali");
ht.Add("002", "Abida Rehman");
ht.Add("003", "Joe Holzner");
ht.Add("004", "Mausam Benazir Nur");
ht.Add("005", "M. Amlan");
ht.Add("006", "M. Arif");
ht.Add("007", "Ritesh Saikia");
if (ht.ContainsValue("Nuha Ali")) {
Console.WriteLine("This student name is already in the list");
} else {
ht.Add("008", "Nuha Ali");
}
// Get a collection of the keys.
ICollection key = ht.Keys;
foreach (string k in key) {
Console.WriteLine(k + ": " + ht[k]);
}
Console.ReadKey();
}
}
}
当以上代码编译并执行时,它会产生以下结果:
001: Zara Ali 002: Abida Rehman 003: Joe Holzner 004: Mausam Benazir Nur 005: M. Amlan 006: M. Arif 007: Ritesh Saikia 008: Nuha Ali
csharp_collections.htm
广告