이 문서는 기계 번역을 이용하여 번역되었습니다. 문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문

Enumerable.Aggregate<TSource> 메서드 (IEnumerable<TSource>, Func<TSource, TSource, TSource>)

 

게시 날짜: 2016년 11월

시퀀스에 대해 누적기 함수를 적용 합니다.

네임스페이스:   System.Linq
어셈블리:  System.Core(System.Core.dll에 있음)

public static TSource Aggregate<TSource>(
	this IEnumerable<TSource> source,
	Func<TSource, TSource, TSource> func
)

매개 변수

source
Type: System.Collections.Generic.IEnumerable<TSource>

IEnumerable<T> 집계할 합니다.

func
Type: System.Func<TSource, TSource, TSource>

각 요소에 대해 호출할 누적기 함수입니다.

반환 값

Type: TSource

최종 누적기 값입니다.

형식 매개 변수

TSource

요소 형식의 source합니다.

Exception Condition
ArgumentNullException

source 또는 funcnull인 경우

InvalidOperationException

source 요소가 포함 되어 있습니다.

Aggregate<TSource>(IEnumerable<TSource>, Func<TSource, TSource, TSource>) 메서드를 사용 하면 간단 하 게 값의 시퀀스에 대해 계산을 수행 합니다. 이 메서드를 호출 하 여 작동 func 각 요소에 대해 한 번 source첫 번째는 제외 합니다. 때마다 func 가 호출 Aggregate<TSource>(IEnumerable<TSource>, Func<TSource, TSource, TSource>) 시퀀스 및 집계 된 값에서 두 요소를 전달 (첫 번째 인수로 func). 첫 번째 요소로 source 초기 집계 값으로 사용 됩니다. 결과 func 이전 집계 값을 대체 합니다. Aggregate<TSource>(IEnumerable<TSource>, Func<TSource, TSource, TSource>) 최종 결과 반환 합니다. func합니다.

이 오버 로드는 Aggregate<TSource>methodisn't의 첫 번째 요소를 사용 하 여 모든 casesbecause에 적합 한 source 초기 집계 값으로. 반환 값의 요소에만 포함 해야 하는 경우에 다른 오버 로드를 선택 해야 source 특정 조건에 맞지 않는 합니다. 예를 들어이 오버 로드 되지에 짝수의 합계를 계산 하려는 reliableif source합니다. 결과 첫 번째 요소는 홀수도 아닌 경우에 잘못 됩니다.

일반적인 집계 작업을 간소화 하기 위해 표준 쿼리 연산자 포함는 일반적인 용도의 count 메서드 Count<TSource>, 및 숫자 집계 메서드 4 개, 즉 Min, Max, Sum, 및 Average합니다.

다음 코드 예제에 사용 하 여 문자열에서 단어의 순서를 반대로 하는 방법을 보여 줍니다Aggregate<TSource>합니다.

string sentence = "the quick brown fox jumps over the lazy dog";

// Split the string into individual words.
string[] words = sentence.Split(' ');

// Prepend each word to the beginning of the 
// new sentence to reverse the word order.
string reversed = words.Aggregate((workingSentence, next) =>
                                      next + " " + workingSentence);

Console.WriteLine(reversed);

// This code produces the following output:
//
// dog lazy the over jumps fox brown quick the 

유니버설 Windows 플랫폼
8 이후 사용 가능
.NET Framework
3.5 이후 사용 가능
이식 가능한 클래스 라이브러리
이식 가능한 .NET 플랫폼 에서 지원됨
Silverlight
2.0 이후 사용 가능
Windows Phone Silverlight
7.0 이후 사용 가능
Windows Phone
8.1 이후 사용 가능
맨 위로 이동
표시: