HashTable键值对集合

<1>

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

namespace HashTable键值对集合
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建了一个键值对集合对象
            Hashtable ht = new Hashtable();

            //-------------------------------Add() 添加

            //Add(object key, object value) ;根据里氏转换定律,当一个地方需要一个父类对象,你可以给它一个子类对象。因为object是所有类的父类,所以你可以给它任何类型的数据

            ht.Add(1, "张三");
            ht.Add(2, "李四");
            ht.Add(3, "王五");
            ht.Add(false, "假");
            ht.Add("数组", new int[] { 5, 6, 7 });

            ht[4] = "新来的"; //除了Add()方法外,这也是一种添加数据的方式;在ht集合中创建key为4值为“新来的”的键值对

            //ht.Add(1, "赵六");//运行会报错:因为键是唯一的,ht里已经有一个key为1的键值对了。如果再添加就报错了。但是以下方法却可以
            ht[1] = "赵六"; // 这里.net内部其实做了一个判断:如果ht里存在key为1的键值对,那么就将key为1的值替换为“赵六”。如果不存在key为1的键值对,那么就创建key为1值为赵六的键值对。

            //在键值对集合中是根据“键”去找“值”的

            //-------------------------------Clear()清空所有元素;

            ht.Clear();

            //-------------------------------Remove()移除指定元素

            ht.Remove(1);//移除key为1的键值对

            //-------------------------------Contains()包含

            //Contains()与ContainsKey()是一样的

            bool b = ht.Contains(1);// 检查ht键值对集合里是否有包含key为1的键值对
            bool c = ht.ContainsKey(1);//检查ht键值对集合里是否有包含key为1的键值对。

            // 如果 System.Collections.Hashtable 包含带有指定的 value 的元素,则为 true;否则为 false。
            bool d = ht.ContainsValue("王五"); //即检查ht集合中是否包含值为“王五”的键值对。

            //---------------------------------------------

            foreach (var item in ht.Keys)
            {
                Console.WriteLine("键是---{0}-------值是{1}", item, ht[item]);  //这里是遍历的是keys 所有item是键,ht[item] 是键对应的值;
            }

            foreach (var item in ht.Keys)
            {
                Console.WriteLine(item); //遍历key ;这里输出:1,2,3,false,数组
            }

            foreach (var item in ht.Values)
            {
                Console.WriteLine(item);//遍历value ;这里输出 张三,李四,王五,假,System.Int32[]
            }
            Console.ReadKey();
        }
    }
}
时间: 2024-10-05 19:15:57

HashTable键值对集合的相关文章

.Net学习笔记----2015-06-24(Hashtable 键值对集合)

Hashtable  键值对集合 有点像字典的概念,查字典时,根据拼音或者偏旁部首查找汉字 而键值对,根据键去找值  键值对对象[键] = 值 *** 键值对集合当中,键必须是唯一的,而值是可以重复的 //创建一个键值对集合对象 Hashtable ht = new Hashtable(); ht.Add(1, "张三"); ht.Add(2, true); ht.Add(3, '男'); ht.Add(false, "错误"); //在键值对集合中,是根据键去找值

Hashtable 键值对集合

// Hashtable  键值对集合 一个键对应一个值                 Hashtable ht=new Hashtable();                 ht.Add(1,"张三");                 ht.Add(2,'男');                 ht.Add(2.1,333m);                 //在键值对集合中键必须是唯一的                  ht[1] = "李四";

Dictionary&lt;T,T&gt;键值对集合(字典)

<1> using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Dictionary字典 { class Program { static void Main(string[] args) { //HashTable键值对集合的声明方式: Hashtable ht = new Hashtable(); 声明的过程中是没有确定键和值的类型的 //Dictiona

Dictionary&lt;&gt;键值对集合

1 //键值对集合初始化,声明键和值的数据类型 2 Dictionary<string, string> dic = new Dictionary<string, string>(); 3 //添加数据 4 dic.Add("1","张三"); 5 dic.Add("2","李四"); 6 dic.Add("3","王五"); 7 dic.Add("4&

JavaScript中把数组当做键值对集合使用。

<script type="text/javascript"> var names = new Array(); names[0] = "张三"; names[1] = "李四"; names[2] = "王五"; names[3] = "赵六"; //键值对集合是没有length长度的,所以遍历的时候使用forin循环来遍历. //对于普通数组遍历的时候要使用for循环来遍历. for (va

安卓训练-开始-保存数据-保存键值对集合

保存键值对集合 上一课 下一课 这节课教你 取得一个 SharedPreferences 的句柄(Handle) 写入共享首选项 读取共享首选项 你还需要阅读 使用共享首选项 如果你有一个比较小的键值对集合需要保存,你应该使用 SharedPreferences API.一个SharedPreferences 对象指向一个包含键值对的文件并提供简单的方法读写键值对.每个SharedPreferences 文件都由框架管理,它可以是私有的或共享的. 这节课教你怎样使用 SharedPreferen

根据指定的键从集合中创建键值对集合

假如有一个对象的集合,想转换成键值对,然后通过键去访问值,通常这个对象有一个唯一标识"Id" public class Student { public int Id { get; set; } public string Name { get; set; } public string Phone { get; set; } } IEnumerable<Student> students = new List<Student>() { new Student(

17JavaScriptDOM动态获取键值对集合中的数据====小图与大图之间的显示问题

<script type="text/javascript"> var datas = { "mv/1-1.jpg": ["mv/1.jpg", "老牛", "163cm"], "mv/2-1.jpg": ["mv/2.jpg", "老马", "165cm"], "mv/3-1.jpg": [&q

把form表单序列化成键值对集合

window.serializeObj = function(form){ var o ={ }; $.each{form.serializeArray(),function(index){ if(o[this['name']]) { o[this['name']] = o[this['name']] +","+ this['value']; } else{ o[this['name']] = this['value']; } return o; }} //调用 var obj =se