C#中的组织语言-----------单双列,泛型集合

      ArryList

  非常类似于数组却又高于数组,因为ArryList可以动态维护,不会局限于存储学过的数组那样有个数限制的值,可以动态的添加,删除,遍历里边的值。

  注意:ArryList类似于数组,所以也可以通过索引检索出里面的值,并且索引从0开始。

     ArryList中的添加,移除和遍历

                  ArrayList list = new ArrayList();
                     list.Add("你好!!");
                     list.Add("世界");

              通过ArryList中的Add();方法进行向ArryList中添加值。

                    list.Remove("世界");

               通过ArryList中的Remove();方法进行向ArryList中移除选定的那个值。

             

                    list.RemoveAt(0);

                  通过ArryList中的RemoveAt();方法进行向ArryList中移除选定索引位置的那个值。

                     list.Clear();

                       通过ArryList中的Clear();方法进行移除ArryList中所有的值。


                foreach(string item in list){
                   Console.WriteLine(item);
                }

              可以利用for循环或者foreach循环来遍历ArryList中的所有值

      for与foreach的不通就是:

       for循环利用下标来遍历而foreach根据ArryList中的所有项来遍历

           List<T>

      List<SE> list = new List<SE>();

        List单列集合"<>"尖括号中可以是类型,如:int,string,可以是类:SE(员工类),PC(电脑类)
            SE se = new SE();
            se.Name = "呵呵";
            se.Age = "25";
            SE se2 = new SE();
            se2.Name = "嘿嘿";

            
                se2.Age="24";

              new出实例给实例赋值
                list.Add(se);
                list.Add(se2);

                Add();,Remove();方法依然适用

        通过foreach遍历List集合中的所有集合
            foreach(SE item in list)
            {
               // SE seforeach = (SE)item;
                Console.WriteLine(item.Name+item.Age);
            }

      注意foreach中的类型位置中 牢记是什么类型 是不是要进行强转同时注意遍历是需要拿到什么值。所以需要拿遍历的item(集合的所有项的总称).出来需要的值

 

         Hashtable(哈希表)

     属于双列集合范畴 有key,Value值,和LIst一样,key和value值也可以是类型,可以是类

         Hashtable table = new Hashtable();
            SE se = new SE();
            se.Name="呵呵";
            se.Age="25";
            se.Id = 0010;
            SE  se2=new SE();
            se2.Name="嘿嘿";
            se2.Age="24";
            se2.Id = 0020;
           table.Add(se.Id,se);
           
            table.Add(se2.Id, se2);

        通过Hashtable中的key值来遍历出Hashtable中的每一项

            foreach (object item in table.Keys)
            {
                Console.WriteLine(item);
            }

         通过Hashtable中的value值来遍历出Hashtable中的每一项
            foreach(object  item in table.Values)
            {
                SE a = (SE)item;
                Console.WriteLine(a.Name+a.Age);
            }

         通过Hashtable中的对象table来遍历出Hashtable中的每一项

            foreach (DictionaryEntry item in table)
            {

                Console.WriteLine(item.Key);
                Console.WriteLine(((SE)item.Value).Name);

            }

               Dictionary<key,Value>

         双列集合Dictionary<key,Value>

                  Dictionary<int, SE> dic = new Dictionary<int, SE>();
          
            SE se = new SE();
            se.Name="呵呵";
            se.Age="25";
            se.Id = 0010;
            SE  se2=new SE();
            se2.Name="嘻嘻";
            se2.Age="24";
            se2.Id = 0020;
            dic.Add(se.Id,se);
            dic.Add(se2.Id,se);

                 通过key,value遍历和哈希表一样
                       foreach(int  item in dic.Keys)
            {
                Console.WriteLine(item);
               // Console.Write(dic[item]);
            }
            foreach(SE item in dic.Values)
            {
                SE a = (SE)item;
                Console.WriteLine(a.Name+a.Age);
            }

                  通过Dictionary中的对象dic来遍历出Hashtable中的每一项
                  KeyValuePair<int,SE>写出key的类型和value的类型
            foreach (KeyValuePair<int,SE> item in dic)
            {
                Console.WriteLine(item.Key);
                Console.WriteLine(item.Value.Name+item.Value.Age);
            }

通过ArryList中的Add();方法进行向ArryList中添加值。

原文地址:https://www.cnblogs.com/9711301314LX/p/8232718.html