總目錄
C# 語法總目錄
上一篇:LINQ(四) ——使用LINQ進行對象類型初始化
LINQ 五 ——使用LINQ進行匿名對象初始化
- 6.2 匿名類型
6.2 匿名類型
可以不用聲明定義一個對象,直接使用new,然后直接賦值即可
string[] names = { "Tom", "Jerry", "kate", "Lucy", "Micky", "li" };var query =from n in namesselect new{name = n,liName = n.ToLower()};foreach (var item in query)
{Console.WriteLine(item.liName+","+item.name);
}Console.WriteLine("--------------");IEnumerable<string> strName =from n in querywhere n.name.Length > 2orderby n.name.Length descendingselect n.name + "," + n.liName;foreach (var item in strName)
{Console.WriteLine(item);
}
//輸出
tom,Tom
jerry,Jerry
kate,kate
lucy,Lucy
micky,Micky
li,li
--------------
Jerry,jerry
Micky,micky
kate,kate
Lucy,lucy
Tom,tom
使用兩個數組,分別取出兩個數組元素的索引,進行比較,然后拼接成一個匿名對象,進行輸出。
string[] names = { "Tom", "Jerry", "kate", "Lucy", "Micky", "li" ,"zh"};
int[] ages = { 10, 20, 50, 12, 45, 20 };var indexedItems = names.Select((value, index) => new { Index = index, Value = value });var dicar =from n in names.Select((value, index) => new { Index = index, Value = value })join a in ages.Select((value, index) => new { Index = index, Value = value }) on n.Index equals a.Indexselect new{name = n.Value,age = a.Value};foreach (var item in dicar)
{Console.WriteLine($"{item.name},{item.age}");
}
//輸出
Tom,10
Jerry,20
kate,50
Lucy,12
Micky,45
li,20
總目錄
C# 語法總目錄
上一篇:LINQ(四) ——使用LINQ進行對象類型初始化