C#集合中的Add与AddRange方法

C#.NET的集合主要位于System.Collections和System.Collections.Generic(泛型)这两个namespace中。

1、System.Collections

比如ArrayList,其Add(继承自接口IList)和AddRange方法可用于想集合中添加元素。

代码示例:

(1)Add:添加单个元素

ArrayList myAL = new ArrayList();
myAL.Add( "The" );
myAL.Add( "quick" );
myAL.Add( "brown" );
myAL.Add( "fox" );

(2)AddRange:添加实现了ICollection接口的一个集合的所有元素到指定集合的末尾

ArrayList myAL = new ArrayList();
myAL.Add( "The" );
myAL.Add( "quick" );
myAL.Add( "brown" );
myAL.Add( "fox" );

Queue myQueue = new Queue();
myQueue.Enqueue( "jumped" );
myQueue.Enqueue( "over" );
myQueue.Enqueue( "the" );
myQueue.Enqueue( "lazy" );
myQueue.Enqueue( "dog" );

myAL.AddRange( myQueue );

2、System.Collections.Generic

泛型同样也有Add(继承自ICollection<T>)和AddRange两个方法。

代码示例:

(1)Add:添加单个元素

List<string> dinosaurs = new List<string>();
dinosaurs.Add("Tyrannosaurus");
dinosaurs.Add("Amargasaurus");
dinosaurs.Add("Mamenchisaurus");
dinosaurs.Add("Deinonychus");
dinosaurs.Add("Compsognathus");

(2)AddRange:添加实现了接口IEnumerable<T>的一个泛型集合的所有元素到指定泛型集合末尾

string[] input = { "Brachiosaurus", "Amargasaurus", "Mamenchisaurus" };
List<string> dinosaurs = new List<string>(input);
dinosaurs.AddRange(dinosaurs);

参考资料:

http://msdn.microsoft.com/zh-cn/library/system.collections(v=vs.100).aspx

http://msdn.microsoft.com/zh-cn/library/system.collections.generic(v=vs.100).aspx

时间: 2024-12-20 10:53:15

C#集合中的Add与AddRange方法的相关文章

黑马程序员——java——自定义一个比较器,对TreeSet 集合中的元素按指定方法来排序

自定义一个比较器,对TreeSet 集合中的元素按指定方法来排序 import java.util.Comparator; import java.util.Iterator; import java.util.TreeSet; //自定义一个比较器 class Mycompare implements Comparator { @Override public int compare(Object o1, Object o2) { // TODO Auto-generated method s

memcache中的add和set方法区别

相信大家对memcache都不陌生,在项目中也经常使用memcache作为缓存方案,那么在使用过程中有没有发现为什么memcahce有两个添加缓 存的方法:一个是add,一个是set,那么你知道这2个方法有什么不同吗?什么时候该使用add?什么时候该使用set呢? 对于这点以前自己也没有去深究,只知道要添加缓存的用set就可以了,好像大多数时候使用的都是set方法,而add好像很少去使用.前几天和一个朋友聊天提起过这个,今晚在这里就记录一下这2个方法之间的不同. 1.memcache::add

Java集合中Map接口的使用方法

Map接口 Map提供了一种映射关系,其中的元素是以键值对(key-value)的形式存储的,能够实现根据key快速查找value: Map中的键值对以Entry类型的对象实例形式存在: 建(key值)不可重复,value值可以重复,一个value值可以和很多key值形成对应关系,每个建最多只能映射到一个值. Map支持泛型,形式如:Map<K,V> Map中使用put(K key,V value)方法添加 HashMap类 HashMap是Map的一个重要实现类,也是最常用的,基于哈希表实现

MVC5 DBContext.Database.SqlQuery获取对象集合到ViewModel集合中(可以利用这个方法给作为前台视图页cshtml页面的@model 源)??待验证

定义一个ViewModel类 public class DirectorVM { [Key] public int DirectorID { get; set; } [Display(Name = "Director Name")] [DataType(DataType.Text)] public string DirectorName { get; set; } public int HometownID { get; set; } } 在一个控制器中先定义一个dbcontext实例

Distinct去除集合中的重复项GetHashCode方法没有返回obj.GetHashCode()导致出错

这个自定义类必须继承IEqualityComparer接口,并且实现该接口方法public int GetHashCode(ActionInfo obj)必须返回 正确写法应该是下面这样子

[ jquery 文档处理 prependTo(content) ] 此方法用于把所有匹配的元素前置到另一个、指定的元素元素集合中

把所有匹配的元素前置到另一个.指定的元素元素集合中 实际上,使用这个方法是颠倒了常规的$(A).prepend(B)的操作,即不是把B前置到A中,而是把A前置到B中 在jQuery 1.3.2中,appendTo, prependTo, insertBefore, insertAfter, 和 replaceAll这个几个方法成为一个破坏性操作,要选择先前选中的元素,需要使用end()方法,参见 appendTo 方法的例二 实例: <html lang='zh-cn'> <head&g

java中的contains()方法

import java.util.ArrayList; import java.util.Collection; /*  * boolean contains(object o);判断集合中是否包含某个元素.  * boolean remove(object o);删除集合集合中个某个元素  */ //contains方法底层调用的书equals方法,所有存储在集合的中元素应该重写equals()方法. public class ColletcionTest02 { public static 

去掉集合中的重复元素

1 //去掉集合中额重复元素 2 //方法:选择排序的思想 3 4 public class ArrayListDemo1 { 5 6 public static void main(String[] args) { 7 8 ArrayList arrayList = new ArrayList(); 9 10 arrayList.add("hello"); 11 arrayList.add("hello"); 12 arrayList.add("java

Java集合中的Map接口

jdk1.8.0_144 Map是Java三种集合中的一种位于java.util包中,Map作为一个接口存在定义了这种数据结构的一些基础操作,它的最终实现类有很多:HashMap.TreeMap.SortedMap等等,这些最终的子类大多有一个共同的抽象父类AbstractMap.在AbstractMap中实现了大多数Map实现公共的方法.本文介绍Map接口定义了哪些方法,同时JDK8又新增了哪些. Map翻译为“映射”,它如同字典一样,给定一个key值,就能直接定位value值,它的存储结构为