C#中的Hashtable
来源:互联网 发布:linux打包多个文件夹 编辑:程序博客网 时间:2024/06/06 00:17
1、别称:哈希表、键值对、关联数组
2、概述:
(1)、用于处理和表现类似Key/Value的键值对
(2)、key --- 可以是不同数据类型,但不能重名,必须满足唯一性,同时它还区分大小写。通常用于快速查找,类似索引。
value --- 用于存储对应key的值,
二者均为object类型, 因此,Hashtable支持任何类型的key/value键值对。
(3)、Hashtable中的元素存储在DictionaryEntry对象中。
3、声明之前需引用命名空间:System.Collections
Hashtable ht = new Hashtable();
4、添加方法:
(1)Add(键,"值")
(2)ht[键] = "值"
用第二种方法,可能添加元素,也可能是重新赋值,取决于 “键”是否已经存在!
5、遍历方法:利用foreach循环
(1)用DictionaryEntry对象 声明;
foreach (DictionaryEntry myEntry in ht)
{
Console.WriteLine("key键:{0}-----value值:{1}",myEntry.Key,myEntry.Value);
}
(2)用Object类声明
foreach (object obj in ht.Keys)
{
Console.WriteLine("key键:{0}-----value值:{1}",obj,ht[obj]);
}
6、删除方法:
Remove(Key键) ----- 删除指定元素
Clear() ------ 清空所有元素
7、查找方法:(返回布尔值)
ContainsKey ---- 按 键 查找
ContainsValue ---- 按 值 查找
2、概述:
(1)、用于处理和表现类似Key/Value的键值对
(2)、key --- 可以是不同数据类型,但不能重名,必须满足唯一性,同时它还区分大小写。通常用于快速查找,类似索引。
value --- 用于存储对应key的值,
二者均为object类型, 因此,Hashtable支持任何类型的key/value键值对。
(3)、Hashtable中的元素存储在DictionaryEntry对象中。
3、声明之前需引用命名空间:System.Collections
Hashtable ht = new Hashtable();
4、添加方法:
(1)Add(键,"值")
(2)ht[键] = "值"
用第二种方法,可能添加元素,也可能是重新赋值,取决于 “键”是否已经存在!
5、遍历方法:利用foreach循环
(1)用DictionaryEntry对象 声明;
foreach (DictionaryEntry myEntry in ht)
{
Console.WriteLine("key键:{0}-----value值:{1}",myEntry.Key,myEntry.Value);
}
(2)用Object类声明
foreach (object obj in ht.Keys)
{
Console.WriteLine("key键:{0}-----value值:{1}",obj,ht[obj]);
}
6、删除方法:
Remove(Key键) ----- 删除指定元素
Clear() ------ 清空所有元素
7、查找方法:(返回布尔值)
ContainsKey ---- 按 键 查找
ContainsValue ---- 按 值 查找
8、演示代码如下:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Collections;namespace Hashtable演示{ class Program { static void Main(string[] args) { Hashtable ht = new Hashtable(); ht.Add(1,"张三"); ht.Add(true,"李四"); ht.Add(false,"王五"); ht[2] = "赵六"; ht[true] = "我把李四覆盖了"; //重新赋值,因为已经存在key键 true //用object类声明 foreach (object obj in ht.Keys) { Console.WriteLine("key键:{0}-----value值:{1}",obj,ht[obj]); } Console.WriteLine("===================================="); //用DictionaryEntry类声明 foreach (DictionaryEntry myEntry in ht) { Console.WriteLine("key键:{0}-----value值:{1}",myEntry.Key,myEntry.Value); } Console.WriteLine("===================================="); //查找指定元素 if (ht.ContainsKey(false)) //按 键 查找 { Console.WriteLine("存在false键!"); } else { Console.WriteLine("不存在false键!"); } Console.WriteLine(""); if (ht.ContainsValue("张三")) //按 值 查找 { Console.WriteLine("存在这个值"); } else { Console.WriteLine("不存在这个值!"); } //删除元素 Console.WriteLine(""); ht.Remove(false); Console.WriteLine("删除false键对应的值:王五"); foreach (DictionaryEntry myEntry in ht) { Console.WriteLine("key键:{0}-----value值:{1}", myEntry.Key, myEntry.Value); } Console.WriteLine(""); //清空所有元素 ht.Clear(); foreach (DictionaryEntry myEntry in ht) { Console.WriteLine("key键:{0}-----value值:{1}", myEntry.Key, myEntry.Value); } Console.WriteLine("哈哈,我把所有元素清空了!"); Console.ReadKey(); } }}
0 0
- c#中的Hashtable
- C#中的Hashtable
- C#中的哈希表(Hashtable)应用
- 详解 C# 中的 Hashtable 类
- C#中如何遍历Hashtable中的值
- c#中的哈希表(HashTable)实例详解
- C#中的HashTable与Dictionary小结
- 【c#】C#中的哈希表(HashTable)详解
- c#中的Hashtable(哈希表、字典表)
- C# HashTable
- C# Hashtable
- C# Hashtable
- C# hashtable
- C# Hashtable
- C# Hashtable
- C# HashTable
- c# hashtable
- C# Hashtable
- js控制点击按钮样式切换!
- NSError error.code对照表
- Vijos 1036题:安装服务器
- linux系统cpu、内存、磁盘IO异常查询方式汇总
- Bootstrap 3兼容IE8浏览器
- C#中的Hashtable
- swal弹框后input标签获得焦点
- The Morning after Halloween(POJ
- Java NIO 的前生今世 之四 NIO Selector 详解
- CodeForces 631 B.Print Check(水~)
- JVM调优总结(四)-垃圾回收面临的问题
- 排序算法的C++ && Python实现---选择排序
- JavaScript indexOf()
- 运维学习笔记201~300