泛型和數組
在 C# 2.0 中,下限為零的一維數組自動實現 {
Track('ctl00_LibFrame_ctl06|ctl00_LibFrame_ctl07',this);
}" href="http://msdn2.microsoft.com/zh-cn/library/5y536ey6(VS.80).aspx">IList<T>。這使您可以建立能夠使用相同代碼逐一查看數組和其他集合類型的泛型方法。此技術主要對讀取集合中的資料很有用。IList<T> 介面不能用於在數組中添加或移除元素;如果試圖在此上下文中調用 IList<T> 方法(如數組的 {
Track('ctl00_LibFrame_ctl06|ctl00_LibFrame_ctl08',this);
}" href="http://msdn2.microsoft.com/zh-cn/library/c93ab5c9(VS.80).aspx">RemoveAt),將引發異常。
下面的程式碼範例示範帶有 IList<T> 輸入參數的單個泛型方法如何同時逐一查看列表和數組,本例中為整數數組。
class Program2
{
code_collapse_toggle(this);
}" src="http://writeblog.csdn.net/Images/OutliningIndicators/ExpandedBlockStart.gif" alt="" align="top">{
code_collapse_toggle(this);
}" src="http://writeblog.csdn.net/Images/OutliningIndicators/ContractedBlock.gif" alt="" align="top"> {
static void Main()
{
code_collapse_toggle(this);
}" src="http://writeblog.csdn.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" alt="" align="top">{
code_collapse_toggle(this);
}" src="http://writeblog.csdn.net/Images/OutliningIndicators/ContractedSubBlock.gif" alt="" align="top"> {
{
code_collapse_toggle(this);
}" src="http://writeblog.csdn.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" alt="" align="top">{
code_collapse_toggle(this);
}" src="http://writeblog.csdn.net/Images/OutliningIndicators/ContractedSubBlock.gif" alt="" align="top"> int[] arr = { 0, 1, 2, 3, 4 };
List<int> list = new List<int>();
for (int x = 5; x < 10; x++)
{
code_collapse_toggle(this);
}" src="http://writeblog.csdn.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" alt="" align="top">{
code_collapse_toggle(this);
}" src="http://writeblog.csdn.net/Images/OutliningIndicators/ContractedSubBlock.gif" alt="" align="top"> {
list.Add(x);
list.Remove(2);
}
ProcessItems<int>(arr);
ProcessItems<int>(list);
}
static void ProcessItems<T>(IList<T> coll)
{
code_collapse_toggle(this);
}" src="http://writeblog.csdn.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" alt="" align="top">{
code_collapse_toggle(this);
}" src="http://writeblog.csdn.net/Images/OutliningIndicators/ContractedSubBlock.gif" alt="" align="top"> {
foreach (T item in coll)
{
code_collapse_toggle(this);
}" src="http://writeblog.csdn.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" alt="" align="top">{
code_collapse_toggle(this);
}" src="http://writeblog.csdn.net/Images/OutliningIndicators/ContractedSubBlock.gif" alt="" align="top"> {
System.Console.Write(item.ToString() + " ");
}
System.Console.WriteLine();
}
}