Dictionary<T,T>键值对集合(字典)

<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();  声明的过程中是没有确定键和值的类型的

            //Dictionary键值对集合与HashTable键值对集合有所有不同,Dictionary的键和值的类型都已经声明确定了
            Dictionary<int, string> dic = new Dictionary<int, string>(); //创建一个键值对集合对象,键的类型为int。值的类型为string。
            dic.Add(1, "张三");
            dic.Add(2, "李四");
            //d.Add("张三",28) 错误;因为Dictionary<int,string> 已经确定它的键只能是int类型,值只能是string类型。

            //dic.Add(1, "新的张三");//报错。key是唯一的。前面已经添加了一个key为1的键值对了。

            dic[1] = "新的张三"; //这样就不会报错了。其实这里是做了一个判断。即:如果dic键值对里一个key为1的键值对, 那么就将它的值更新为“新的张三” 。如果没有key为1的键值对。那么就添加一个key为1 值为“新的张三”的键值对

            //dic.Clear(); //清空dic这个键值对集合的所有元素。

            //HashTable键值对集合只能有这种方式进行遍历。即只能遍历keys.
            foreach (var item in dic.Keys) //遍历dic这个键值对的所有key
            {
                Console.WriteLine(item);  //输出1,2

                Console.WriteLine("键是:{0}----值是:{1}", item, dic[item]);//输出:键是:1----值是:张三  键是:2----值是:李四
            }

            //而Dictionary键值对除了用以上方式进行遍历外,还可以用这种凡是进行遍历。

            foreach (KeyValuePair<int, string> item in dic) //将dic这个键值对以 键值对(一对一对)的形式来遍历。
            {
                Console.WriteLine(item); //输出: [1, 张三] [2, 李四]

                Console.WriteLine("键是:{0}----值是:{1}", item.Key, item.Value);//输出:键是:1----值是:张三  键是:2----值是:李四

            }

            //Dictionary键值对集合实例:将str这个字符串的每个字母做为key,每个字母出现的次数作为值。添加到键值对对象中。
            string str = "welcome to china";
            Dictionary<char, int> dic2 = new Dictionary<char, int>();
            int i = 1;
            foreach (var item in str) //遍历str这个字符串
            {
                if (item == ' ') //如果当前遍历到的字符为' '就跳过当前循环。即:去掉空格
                {
                    continue; //跳过当前循环,进行下一轮循环。
                }
                if (dic2.Keys.Contains(item)) //如果dic2这个键值对集合中包含了 key为 item 这个键值对
                {
                    dic2[item]++;  //那么就将key为item这个键值对的值在原有的基础上自增一次。即+1
                }
                else
                {
                    dic2.Add(item, 1); //否则就将item 作为key。1作为默认值。添加到dic2这个键值对中。
                }
            }

            foreach (var item in dic2)
            {
                Console.WriteLine("字母:{0}----出现的次数为:{1}次", item.Key, item.Value);
            }
            Console.ReadKey();
        }
    }
}
时间: 2024-12-19 20:22:04

Dictionary<T,T>键值对集合(字典)的相关文章

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&

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

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

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

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

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(); //-------

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

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

Hashtable 键值对集合

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

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

假如有一个对象的集合,想转换成键值对,然后通过键去访问值,通常这个对象有一个唯一标识"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(

Java Dictionary 类存储键值

字典(Dictionary) 字典(Dictionary) 类是一个抽象类,它定义了键映射到值的数据结构. 当你想要通过特定的键而不是整数索引来访问数据的时候,这时候应该使用Dictionary. 当你想要通过特定的键而不是整数索引来访问数据的时候,这时候应该使用Dictionary. 当你想要通过特定的键而不是整数索引来访问数据的时候,这时候应该使用Dictionary. 当你想要通过特定的键而不是整数索引来访问数据的时候,这时候应该使用Dictionary. Dictionary类已经过时了

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