Collection
今天只是想总结一下Collection的相关知识
C#中,System.Collections命名空间中的接口和类,等价于JAVA 的java.util包;
System.Collections Interface
System.Collections命名空间中。IEnumerable,ICollection。IList和IMap接口组成集合的核心借口。
继承关系
C# Ienumerable Icollection Ilist, IMap
JAVA java.util.colletion java.util.List
java.util.Map
System.Collections Class
1.ArrayList(相当于java.util.ArrayList) and Hashtable(相当于java.util.Hashmap)(散列表)
既不是线程安全的,也不是类型安全的,用索引器访问元素;可以是固定大小,也可以是只读的。注意:Hashtable不可以和java.util.Hashtable,因为java.util.Hashtable是线程安全的。C# Hashtable中,不能存储重复键键不能为空,而在java中允许,且不提示新值覆盖旧值的消息!
2.Queue , Stack (相当于java.util.Stack)and SortedList(相当于java.util.TreeMap)
不是线程安全的,也不是类型安全的,还不能用索引器访问元素,可以是只度和固定大小的
3.C#提供两个抽象类: CollectionBase和DictionaryBase 注意:C#集合中可以存储简单类型,而不用转成相应的对象,应为有自动装箱和拆箱机制。
C#中类集合不是线程安全的,类似于java,所以 调用Synchronized方法,该方法提供类的线程安全包装器!
今天只是想总结一下Collection的相关知识
C#中,System.Collections命名空间中的接口和类,等价于JAVA 的java.util包;
System.Collections Interface
System.Collections命名空间中。IEnumerable,ICollection。IList和IMap接口组成集合的核心借口。
继承关系
C# Ienumerable Icollection Ilist, IMap
JAVA java.util.colletion java.util.List
java.util.Map
System.Collections Class
1.ArrayList(相当于java.util.ArrayList) and Hashtable(相当于java.util.Hashmap)(散列表)
既不是线程安全的,也不是类型安全的,用索引器访问元素;可以是固定大小,也可以是只读的。注意:Hashtable不可以和java.util.Hashtable,因为java.util.Hashtable是线程安全的。C# Hashtable中,不能存储重复键键不能为空,而在java中允许,且不提示新值覆盖旧值的消息!
2.Queue , Stack (相当于java.util.Stack)and SortedList(相当于java.util.TreeMap)
不是线程安全的,也不是类型安全的,还不能用索引器访问元素,可以是只度和固定大小的
3.C#提供两个抽象类: CollectionBase和DictionaryBase 注意:C#集合中可以存储简单类型,而不用转成相应的对象,应为有自动装箱和拆箱机制。
C#中类集合不是线程安全的,类似于java,所以 调用Synchronized方法,该方法提供类的线程安全包装器!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货