System.Collections.Specialized.NameObjectCollectionBase.BaseAdd 方法

方法描述

将具有指定键和值的项添加到 NameObjectCollectionBase 实例中。

语法定义(C# System.Collections.Specialized.NameObjectCollectionBase.BaseAdd 方法 的用法)

protected void BaseAdd(
	string name,
	Object value
)

参数/返回值

参数值/返回值 参数类型/返回类型 参数描述/返回描述
name System-String 要添加的项的 String 键。键可以是 null。
value System-Object 要添加的项的 Object 值。该值可以为 null。
返回值 void

提示和注释

如果 Count 已经等于容量,则在添加新元素之前,会通过自动重新分配内部数组并将现有元素复制到新数组中,来使 NameObjectCollectionBase 的容量增加。

如果 Count 小于容量,则此方法的运算复杂度是 O(1)。 如果需要增加容量以容纳新元素,则此方法的运算复杂度成为 O(n),其中 n 为 Count。

System.Collections.Specialized.NameObjectCollectionBase.BaseAdd 方法例子

下面的代码示例使用 BaseAdd 创建具有来自 IDictionary 的元素的新 NameObjectCollectionBase。

using System;
using System.Collections;
using System.Collections.Specialized;

public class MyCollection : NameObjectCollectionBase  {

   private DictionaryEntry _de = new DictionaryEntry();

   // Gets a key-and-value pair (DictionaryEntry) using an index.
   public DictionaryEntry this[ int index ]  {
      get  {
         _de.Key = this.BaseGetKey( index );
         _de.Value = this.BaseGet( index );
         return( _de );
      }
   }

   // Adds elements from an IDictionary into the new collection.
   public MyCollection( IDictionary d )  {
      foreach ( DictionaryEntry de in d )  {
         this.BaseAdd( (String) de.Key, de.Value );
      }
   }

}

public class SamplesNameObjectCollectionBase  {

   public static void Main()  {

      // Creates and initializes a new MyCollection instance.
      IDictionary d = new ListDictionary();
      d.Add( "red", "apple" );
      d.Add( "yellow", "banana" );
      d.Add( "green", "pear" );
      MyCollection myCol = new MyCollection( d );

      // Displays the keys and values of the MyCollection instance.
      for ( int i = 0; i < myCol.Count; i++ )  {
         Console.WriteLine( "[{0}] : {1}, {2}", i, myCol[i].Key, myCol[i].Value );
      }

   }

}


/*
This code produces the following output.

[0] : red, apple
[1] : yellow, banana
[2] : green, pear

*/

异常

异常 异常描述
NotSupportedException 集合为只读。

命名空间

namespace: System.Collections.Specialized

程序集: System(在 System.dll 中)

版本信息

.NET Framework 受以下版本支持:4、3.5、3.0、2.0、1.1、1.0 .NET Framework Client Profile 受以下版本支持:4、3.5 SP1

适用平台

Windows 7, Windows Vista SP1 或更高版本, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008(不支持服务器核心), Windows Server 2008 R2(支持 SP1 或更高版本的服务器核心), Windows Server 2003 SP2 .NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求。