c#HashTable

概念

HashTable 基于键的哈希代码组织起来的 键

它的主要作用是提高数据查询的效率

使用键来访问集合中的元素

声明

cs 复制代码
Hashtable hashtable = new Hashtable();

增删查改

cs 复制代码
hashtable.Add(1, "123");
hashtable.Add("123", 2);
hashtable.Add(true, false);
hashtable.Add(false, true);

注意 不能出现相同键

1只能通过键去删除

cs 复制代码
hashtable.Remove(1);

2删除不存在的键,没反应

3.或者直接清空

cs 复制代码
 hashtable.Clear();

cs 复制代码
Console.WriteLine(hashtable[1]);//[]填的是key
Console.WriteLine(hashtable[4]);//找不到会为空,返回null
Console.WriteLine(hashtable["123123"]);

查看是否存在

cs 复制代码
if (hashtable.Contains("2"))
{
    Console.WriteLine("存在键为2的键值对");
}
if (hashtable.ContainsKey(2))
{
    Console.WriteLine("存在键为2的键值对");
}

根据值去检测

cs 复制代码
if (hashtable.ContainsValue(12))
{
    Console.WriteLine("存在值为12的键值对");
}

cs 复制代码
hashtable[1] = 100.5f;

遍历

得到键值对 对数

cs 复制代码
Console.WriteLine(hashtable.Count);

1遍历所有键

cs 复制代码
 foreach(object item in hashtable.Keys)
 {
     Console.WriteLine("键:" + item);
     Console.WriteLine("值"+hashtable[item]);
 }

2遍历所有值

cs 复制代码
foreach(object item in hashtable.Values)
{
    Console.WriteLine("值"+item);
}

3键值对一起遍历

cs 复制代码
foreach(DictionaryEntry item in hashtable)
{
    Console.WriteLine("键+item.key" + "值" + item.Value) ;
}

4迭代器遍历法

cs 复制代码
IDictionaryEnumerator enumerator = hashtable.GetEnumerator();
bool flag = enumerator.MoveNext();
while (flag)
{
    Console.WriteLine("键" + enumerator + "值" + enumerator.Value);
    flag = enumerator.MoveNext();
}
相关推荐
小白学大数据2 小时前
Scrapy 分布式爬虫:大规模采集汽车之家电车评论
开发语言·分布式·爬虫·scrapy
HSunR2 小时前
java springboot3 后端 基础框架
java·开发语言
Mr_Xuhhh2 小时前
算法刷题笔记:从滑动窗口到哈夫曼编码,我的算法进阶之路
开发语言·算法
七夜zippoe2 小时前
Java技术未来展望:GraalVM、Quarkus、Helidon等新趋势探讨
java·开发语言·python·quarkus·graaivm·helidon
枫叶落雨2222 小时前
ClassPathXmlApplicationContext
java·开发语言
游乐码2 小时前
C#Queue
数据结构·游戏·c#
十五年专注C++开发2 小时前
Oat++: 一个轻量级、高性能、零依赖的 C++ Web 框架
开发语言·c++·web服务·oatpp
陈天伟教授2 小时前
心电心音同步分析-案例:原型设计一
开发语言·人工智能·python·语言模型·架构
Allen_LVyingbo3 小时前
量子计算Dirac Notation基本教学—从零基础到读懂量子信息论文(下)
开发语言·人工智能·python·数学建模·量子计算