1.5 C#语言基础-Hashtable
Hashtable -哈希表
- 键-值对的集合
- 键不能为空,值可以为空
- 元素存储于DictionaryEntry对象中
Hashtable两种常用的构造函数
1. public Hashtable():默认的初始容量、加载因子、哈希代码提供程序和比较器来初始化
2. public Hashtable(int capacity):使用指定的初始容量、加载因子、哈希代码提供程序和比较器来初始化
capacity 是指Hashtable对象最初可包含的元素的近似数目。
Hashtable常用属性
属性 | 说明 |
---|---|
Count | Hashtable中键-值对的个数 |
IsFixedSize | 获取一个值,指示Hashtable是否具有固定大小 |
IsReadOnly | 获取一个值,指示Hashtable是否为只读 |
IsSynchronized | 获取一个值,指示是否同步对Hashtable的访问 |
Item | 获取或者设置指定键关联的值 |
Keys | 获取所有的键 |
SyncRoot | 获取可用于同步Hashtable的访问对象 |
Values | 获取包含Hashtable中值的IColletion |
常用方法
需用引用System.Colletions
- Add(Object key,Object value) 添加
Hashtable hashtable=new Hashtable();
hashtable.Add("id","1001");
hashtabke.Add("name","xiaoming");
Console.WriteLine(hashtable.Count);//获取元素个数 2
- 清空,Clear()
Hashtable hashtable=new Hashtable();
hashtable.Add("id","1001");
hashtabke.Add("name","xiaoming");
Console.WriteLine(hashtable.Count);//获取元素个数 2
hashtable.Clear();//清空
- 删除Hashtable元素 :Remove(Object key)
hashtable.Remove("id")
- 遍历Hashtbale
Hashtable hashtable=new Hashtable();
hashtable.Add("id","1001");
hashtabke.Add("name","xiaoming");
foreach( DictionaryEntry dicEntry in hashtable)
{
Console.WriteLine("key:"+dicEntry.Key +"\t"+dicEntry.Value);
}
查找hashtable中元素
- Contains(Object key):判断是否包含特定键,包含返回true,否者返回false
- ContainsKey同上
Hashtable hashtable=new Hashtable();
hashtable.Add("id","1001");
hashtabke.Add("name","xiaoming");
Console.WriteLine(hashtable.Contains("id"));
- ContainsValue(Object Value):判断是否包含特定值,包含返回true,否者返回false
Console.WriteLine(hashtable.ContainsValue("hello"));