zoukankan      html  css  js  c++  java
  • C#中的集合类——HashTable

    HashTable 被称为键值对集合,类似于字典,根据key可以找到value

    键值对对象[键]=值;
    键值对集合当中,键必须是唯一的,而值是可以重复的

    1.  HashTable的用法

                //创建了一个键值对集合对象
                Hashtable ht = new Hashtable();
                ht.Add(1, "张三");
                ht.Add(2, true);
                ht.Add(3, '');
                ht.Add(false, "错误的");
                ht.Add(5, "张三");
                ht[6] = "新来的";//这也是一种添加数据的方式
                ht[1] = "把张三干掉";
                ht.Add("abc", "cba");
    
                //abc----cba
                if (!ht.ContainsKey("abc"))
                {
                    //ht.Add("abc", "哈哈哈");
                    ht["abc"] = "哈哈哈";
                }
                else
                {
                    Console.WriteLine("已经包含abc这个键!!!");
                }
    
    
               // ht.Clear(); //移除集合中所有的元素
                ht.Remove(3);
    
                foreach (var item in ht.Keys)
                {
                    Console.WriteLine("键是-----{0}==============值是{1}", item, ht[item]);
                }
                //在键值对集合中 是根据键去找值的
                //Console.WriteLine(ht[1]);
                //Console.WriteLine(ht[2]);
                //Console.WriteLine(ht[3]);
                //Console.WriteLine(ht[false]);
                //Console.WriteLine("==================================");
                //for (int i = 0; i < ht.Count; i++)
                //{
                //    Console.WriteLine(ht[i]);
                //}

    2.  foreach循环

      当循环次数巨大的时候,foreach循环的效率远远高于for循环。

      foreach( var item in collection ) { 循环体}

       item : 集合中的每一项元素

       collection :需要遍历的集合

       var : 可以根据值,自动地推断出类型

                var n = 15;
                var n2 = "张三";
                var n3 = 3.14;
                var n4 = 5000m;
                var n5 = true;
                var n6 = '';
                Console.WriteLine(n.GetType());
                Console.WriteLine(n2.GetType());
                Console.WriteLine(n3.GetType());
                Console.WriteLine(n4.GetType());
                Console.WriteLine(n5.GetType());
                Console.WriteLine(n6.GetType());
                Console.ReadKey();

      输出:

     

      既然var可以通吃以上的类型,为何在C#中它却不受欢迎?

       因为在使用var这个关键字来定义变量的时候,必须在声明变量的时候为变量赋值,否则编译器将报错。

       有时候,我们需要这样做。  string str;  str = "1230";

          这就是var做不到的地方。

    3. 强类型语言 和 弱类型语言

      c#是一门强类型语言:在代码当中,必须对每一个变量的类型有一个明确的定义

      其他强类型语言: java、C++等

          弱类型语言:lua、vb、javaScript等

  • 相关阅读:
    Android学习笔记ActionView
    Android学习笔记添加ActionItem
    Android学习笔记显示和隐藏ActionBar
    Android学习笔记上下文菜单
    Android学习笔记菜单资源文件
    Android学习笔记样式资源文件
    Android学习笔记主题(Theme)资源文件
    Android学习笔记StateListDrawable文件
    Android学习笔记.9.png格式图片
    笔记本外接显示器设置全屏壁纸
  • 原文地址:https://www.cnblogs.com/lcxBlog/p/4884239.html
Copyright © 2011-2022 走看看