C#基础(18)——List泛型集合、装箱、拆箱、字典集合与Hashtable区别
来源:互联网 发布:python matplotlib曲线 编辑:程序博客网 时间:2024/06/05 10:03
1、List泛型集合的简介
什么是List泛型集合?对元素类型有确切的定义,和数组类型一样,一旦确定了元素的类型,里面的集合类型也就确定了,但它长度可以改变。
2、List定义与转换
List<int> list = new List<int>();//System.Collections.Generic; list.Add(111); list.AddRange(new int[] { 222, 333, 444 }); Console.WriteLine(list); for (int i = 0; i < list.Count; i++) { Console.WriteLine(list[i]); } //可以转换为数组 int[] nums = list.ToArray(); for (int i = 0; i < nums.Length; i++) { Console.Write("int[] {0}", nums[i]); } List<int> list2 = nums.ToList(); for (int i = 0; i < list2.Count; i++) { Console.WriteLine(list2[i]); } Console.ReadKey();
3、装箱拆箱
装箱:将值类型转换为引用类型,
拆箱:将引用类型转换为值类型
ArrayList:
List:
所以程序尽量避免装箱和拆箱!!!
装箱和拆箱有条件:看两种类型是否发生了装箱或者拆箱,要看,这两种类型是否存在继承关系。
反面教材:
//这个地方了例外,可没有装箱和拆箱 string str = "123"; int num = Convert.ToInt32(str);//根本不是继承关系,存在不同的内存里 Console.ReadKey();
正面教材:
int num = 10; IComparable i = num;//public struct Int32 : IComparable, IFormattable, IConvertible, IComparable<int>, IEquatable<int> //是父类,所以是装箱 Console.ReadKey();
4、dictionary字典集合
首先要创建集合:
Dictionary<int,string> dic=new Dictionary<int,string>(); dic.Add(1, "zs"); dic[2] = "ls"; foreach (var item in dic.Keys) { Console.WriteLine("{0}--->{1}", item, dic[item]); } //一对一对遍历 Console.WriteLine("//一对一对遍历"); foreach (KeyValuePair<int,string>kv in dic) { Console.WriteLine("{0}--->{1}", kv.Key, kv.Value); } Console.ReadKey();
5、泛型集合的练习
将一个数组中的奇数放到一个集合,将偶数放到另一个集合。
阅读全文
0 0
- C#基础(18)——List泛型集合、装箱、拆箱、字典集合与Hashtable区别
- C#基础-059 泛型集合List<>与字典Dictionary<,>
- C#基础-058 List集合、HashSet集合、HashTable集合、StringBuilder与String运行效率比较
- C#基础精华03(常用类库StringBuilder,List<T>泛型集合,Dictionary<K , V> 键值对集合,装箱拆箱)
- C#中字典集合HashTable、Dictionary、ConcurrentDictionary三者区别
- Java集合——HashMap与Hashtable的区别
- c# 集合类:ArrayList,StringCollection,Hashtable,List
- c# 集合类:ArrayList,StringCollection,Hashtable,List
- 【C#】数组与集合(LIst、ArrayList、HashTable、Dictionary)
- C# List泛型集合
- C# List泛型集合
- C# List泛型集合
- C#基础课程之五集合(HashTable,Dictionary)
- C#控制台基础 List泛型集合与对应的数组相互转换
- C# List<>集合基础操作
- C#泛型List< >集合:创建、与数组转换,记录运行时间、装箱与拆箱、dictionary
- C#泛型集合—List<T>使用技巧
- C# Dictionary 泛型字典集合
- UI设计不仅仅是美工
- 四大法宝祝你面试成功
- 最短路径—Dijkstra算法和Floyd算法
- Jacoco收集覆盖率信息函数MethodAnalyzer分析1
- Restful注入参数
- C#基础(18)——List泛型集合、装箱、拆箱、字典集合与Hashtable区别
- 通过Pandas读取大文件
- 欢迎使用CSDN-markdown编辑器
- linux命令之mkdir
- Java注解
- 泛型和map集合
- No module named 'keras.datasets'; 'keras' is not a package
- 数据库连接池
- 认识SSM框架和Redis(二)