首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C# 擴展方法進階技巧:Aggregate 擴展方法基礎應用與字串處理 (上)

     編輯:關於C語言

Aggregate 雖被歸類為複雜方法,實則功能強大,可簡化多種聚合運算。

基礎求和

int[] nums = {1,2,3,4,5,6,7,8,9,10};
int sum1 = nums.Sum();
int sum2 = nums.Aggregate((i,j) => i+j); // 相同結果,但更底層

字串串接

string[] words = {"Able","was","I","ere","I","saw","Elba"};
string s = words.Aggregate((a,n) => a + " " + n);
// 結果:"Able was I ere I saw Elba" (拿破崙名言回文)

反向累加

string reverse = words.Aggregate((a,n) => n.Reverse() + " " + a);

配合自訂 Reverse() 擴展可實現單字反轉與順序反轉雙重效果。

異或校驗碼

byte[] data = {0x31,0x32,0x33,0x34,0x35};
byte checkSum = data.Aggregate((a,n) => (byte)(a ^ n));

適用於串口通訊校驗碼計算。Aggregate 低階特性使其能實現 Sum/Max 等高階方法無法涵蓋的邏輯。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved