泛型集合
2016-04-06 18:53
176 查看
{ #region MyRegion //定做一个箱子,装入可以装任意多个人 ArrayList list = new ArrayList(); Tools frm = new Tools(); frm.Name = "李小龙"; Tools frm2 = new Tools(); frm2.Name = "成龙"; Tools frm3 = new Tools(); frm3.Name = "李小乐"; Tools frm4 = new Tools(); frm4.Name = "李小乐"; list.Add(frm); list.Add(frm2); list.Add(frm3); //遍历集合中所有元素 foreach (Tools tool in list) { Console.WriteLine(tool.Name); } list.Remove(frm3); //判断龙哥是否在集合中 if (list.Contains(frm4)) //存在 { //list.Remove(p4); //根据下标来删 list.RemoveAt(0); } else { Console.WriteLine("数据都不存在,如何删除???"); } Console.WriteLine("===============删除后========="); foreach (Tools tool in list) { Console.WriteLine(tool.Name); } list.Insert(0, frm4); Console.WriteLine("===============插入后========="); foreach (Tools tool in list) { Console.WriteLine(tool.Name); } Console.WriteLine("*********************************"); Hashtable table = new Hashtable(); Person p1 = new Person(); p1.Name = "张三"; Person p2 = new Person(); p2.Name = "赵四"; Person p3 = new Person(); p3.Name = "公里"; table.Add("001", p1); table.Add("002", p2); table.Add("003", p3); //遍历HashTable三种方案 /* * 无论是java还是C#,引用类型对象都会自动调用它的ToString() ToString()命名空间.类名 */ //方式一:通过key获取key和value foreach (string key in table.Keys) {//通过key获取value Console.WriteLine("key是{0}\tvalue是{1}", key, ((Person)table[key]).Name); } Console.WriteLine("**************************************"); //方式二:只获取value foreach (Object value in table.Values) { Console.WriteLine(((Person)value).Name); } #endregion /////////////////////////////////////////////////////////////// Hashtable table = new Hashtable(); Person p1 = new Person(); p1.Name = "张三"; Person p2 = new Person(); p2.Name = "赵四"; Person p3 = new Person(); p3.Name = "公里"; table.Add("001", p1); table.Add("002", p2); table.Add("003", p3); //遍历HashTable三种方案 /* * 无论是java还是C#,引用类型对象都会自动调用它的ToString() ToString()命名空间.类名 */ //方式一:通过key获取key和value foreach (string key in table .Keys ) { Console.WriteLine("key是{0}\tvalue是{1}",key ,((Person )table [key ]).Name ); } Console.WriteLine("=============================================="); foreach (Object value in table .Values ) { Console.WriteLine(((Person )value ).Name ); } Console.WriteLine("==========================================="); //方式三:key和value同时遍历 key+value foreach (DictionaryEntry item in table) { Console.WriteLine("key是{0}\tvalue是{1}", item.Key, ((Person)item.Value).Name); } //删除 Remove() table.Remove("001"); //修改 咱们修改“002” key对应value值得name属性为“大美丽” //先判断 是否存在某个key if (table .ContainsKey("002")) { Person p = (Person)table["002"]; p.Name = "大美丽"; } Console.WriteLine("===========修改后=============="); //方式三:key和value同时遍历 key+value foreach (DictionaryEntry item in table ) { Console.WriteLine("key是{0}\tvalue是{1}", item.Key, ((Person)item.Value).Name); } Console.WriteLine("==========删除后=========="); //方式三:key和value同时遍历 key+value foreach (DictionaryEntry item in table) { Console.WriteLine("key是{0}\tvalue是{1}", item.Key, ((Person)item.Value).Name); } Console.ReadLine(); }
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.CodeDom; using System.Collections; namespace FrmMain { class Program { static void Main(string[] args) { List<Person> list = new List<Person>(); Person p1 = new Person(); p1.Name = "小王"; Person p2 = new Person(); p2.Name = "张三"; list.Add(p1); list.Add(p2); //foreach (Person item in list) //{ // Console.WriteLine(item.Name); //} list.Add(new Person() { Name="asdf",Age =12}); list.Add(new Person() { Name="asdf"}); list.Add(new Person() { Name="sdafsa"}); foreach (Person person in list) { Console.WriteLine(person.Name+ person.Age); } //Dictionary<string, Person> div = new Dictionary<string, Person>(); //Person p5 = new Person(); //p5.Name = "李晓玲"; //p5.Age = 12; //Person p6 = new Person(); //p6.Name = "李晓玲2"; //p6.Age = 22; //div.Add(p5.Name, p5); //div.Add(p6.Name, p6); //foreach(string item in div.Keys ) //{ // Console.WriteLine("key{0}\t {0}",item ,div [item].Name ); //} //foreach (Person value in div.Values) //{ // Console.WriteLine("{0}\t{1}", value.Name, value.Age); //} //foreach (KeyValuePair<string, Person> item in div) //{ // Console.WriteLine(item.Key + "\t" + item.Value.Age); //} //Console.ReadKey(); //ArrayList list = new ArrayList() //{ // new Person (){Name ="李小龙",Age=12}, // new Person (){Name ="李小龙2",Age=12}, // new Person (){Name ="李小龙3",Age=12} //}; //for (int i = 0; i <list.Count ; i++) //{ // Console.WriteLine(((Person )list [i]).Name); //} Console.ReadLine(); } } }
相关文章推荐
- [FxCop.设计规则]7. 集合类应该实现泛型接口
- 泛型(一)集合中使用泛型
- java 泛型深入之Set实用工具 各种集合泛型深入使用示例,匿名内部类、内部类应用于泛型探讨
- 【Java学习笔记】14.集合框架和泛型
- 将DataTable转换成List<T>泛型集合助手类
- C#中利用LINQ to XML与反射把任意类型的泛型集合转换成XML格式字符串的方法
- 泛型集合和Dateset的区别
- 温习java collection(集合对象)和泛型
- List泛型集合常用方法
- JAVA 集合类(Collection)、List、Set、Map、Collections与Arrays、泛型
- 黑马程序员--集合框架知识总结和泛型--java学习日记7(基础知识)
- 定义泛型集合的命名空间:System.Collections.Generic
- 集合类及泛型
- Day13关于集合、泛型和文件的大纲
- 如何实现自己的泛型集合和Foreacch原理
- 黑马程序员——集合(中)——TreeSet、泛型
- java 集合 泛型
- C# Synchronized 和 SyncRoot 实现线程同步的源码分析及泛型集合的线程安全访问
- C#基础课程之四集合(ArrayList、List<泛型>)
- Java 集合之自动打包和解包以及泛型