標籤:param zh-cn eric 資料庫 names ... main [] var
元組
數組合并了相同類型的對象,而元組合并了不同類型的對象.
.NET 4定義了8個泛型Tuple類和一個靜態Tuple類,他們用作元組的工廠.
元組是一種資料結構,通過逗號分隔
Tuple<T1,T2,T3...>最多能到7,也可以通過嵌套的元組中的對象建立八個或多個元素的元組在Rest屬性中的Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> 對象。
案例:
//一個元素的元組
Tuple<int> test = new Tuple<int>(34);
//兩個元素的元組
Tuple<string, int> test2 = new Tuple<string, int>("zhangsan",23);
//多個元素的元組
Tuple<int, int, Tuple<int, int>> test_i_i_Tii = new Tuple<int, int, Tuple<int, int>>(1, 1, new Tuple<int, int>(2, 3));
Console.WriteLine(test.Item1);
Console.WriteLine(" {0} : {1}",test2.Item1,test2.Item2);
Console.ReadKey();
多個傳回值問題
一般shiyongout關鍵字,使用元組也可以實現,案例:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 元組
{
class Program
{
static void Main(string[] args)
{
string outparam = "";
//使用out關鍵字得到多個傳回值
int returnvalue = OutTest(out outparam);
Console.WriteLine(outparam);
//使用Tuple得到多個關鍵字
Tuple<string, int> test = TupleTest();
Console.WriteLine("{0},{1}", test.Item1, test.Item2); ;
Console.ReadKey();
}
/// <summary>
/// 實現返回兩個值
/// </summary>
/// <param name="test"></param>
/// <returns></returns>
public static int OutTest(out string test)
{
test="hahaha";
return 10;
}
/// <summary>
/// 使用元組實現返回兩個值
/// </summary>
/// <returns></returns>
public static Tuple<string, int> TupleTest()
{
return new Tuple<string, int>("zhangsan",10);
}
}
}
當然使用建立的協助器方法的同一元組對象更為簡單:
var test = Tuple.Create("zhangsan",19); Console.WriteLine("{0},{1}",test.Item1,test.Item2);
元組通常有四種不同的使用方式:
1.表示一組資料.例如,元組可以表示一條資料庫記錄,並且其組建可以保濕記錄的各個欄位.
2.提供對資料集的輕鬆訪問和操作
3.在不使用out參數(在C#中)或ByRef參數(在VB)的情況下,從方法匯總返回多個值
4.通過單個參數將多個值傳遞給一個方法.案例:
static void Main(string[] args)
{
Tuple<string,int,char> t=new Tuple<string,int,char>("zhangsan",19,‘M‘)
int res = Test(t);
}
public static int Test(Tuple<string,int ,char> t)
{
return 0;
}
C#編程(三十六)----------元組