程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> c#元組舉例

c#元組舉例

編輯:C#入門知識

元組的概要:

數組合並了相同類型的對象,而元組合並了不同類型的對象。元組起源於函數編程語言(如F#) ,在
這些語言中頻繁使用元組。在N盯4中,元組可通過.NET Fmmework用於所有的NET語言。
.NET 4定義了8個泛型Tuple類和一個靜態Tuple類,它們用作元組的工廠。這裡的不同泛型Tuple
類支持不同數量的元素。例如,Tuple<T1>包含-個元素,Tuple<T1,T2>包含兩個元素,以此類推。

 

1.第一個例子

        private Tuple<int, int> Divide(int dividend, int divisor)
        {
            int result = dividend / divisor;
            int reminder = dividend % divisor;
            return Tuple.Create<int, int>(result, reminder);           //返回兩個相同類型元素的元組
        }

       --------測試-------------

        private void button1_Click(object sender, EventArgs e)
        {
            Tuple<int, int> result = Divide(13, 2);
            Console.WriteLine("result of divison:{0}," +
                "reminder:{1}", result.Item1, result.Item2);                //用屬性item1,item2訪問元組的項
        }

       -------結果-------------

       result of divison:6,reminder:1

2.第二個例子

        private Tuple<int, string> MyTest2(int dividend, string Name)
        {
            int result = dividend / 2;
            string name = "Hello," + Name;
            return Tuple.Create<int, string>(result, name);      //返回兩個不同類型元素的元組
        }

        --------測試-------------

        private void button2_Click(object sender, EventArgs e)
        {
            Tuple<int, string> result = MyTest2(13, "limin");
            Console.WriteLine("result of divison:{0}," +
                "Name:{1}", result.Item1, result.Item2);                //用屬性item1,item2訪問元組的項
        }

        -------結果-------------

        result of divison:6,Name:Hello,limin

3.第三個例子

如果元組包含的項超過8個,就可以使用帶8個參數的Tuple類定義。最後一個模板參數是TRest ,
表示必須給它傳遞一個元組。這樣,就可以創建帶任意個參數的元組了。
下面說明這個功能:
public class Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>
其中,最後一個模板參數是一個元組類型,所以可以創建帶任意多項的元組:
var tuple = Tuple.Create<string,string,string, int,int,int,double,
Tuple<int,int>>(
"stephanie","Alina","Nagel", 2009,6,2,1.37,
Tuple.Create<int,int> (52,3490));


作者:limlimlim

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved