나는이 코드 스 니펫을 다른 게시물에 실었다. 이에이상한 인라인 어레이 초기화
private bool[] GetPageNumbersToLink(IPagedResult result)
{
if (result.TotalPages <= 9)
return new bool[result.TotalPages + 1].Select(b => true).ToArray();
...
C# Array initialization - with non-default value
필자의 의견 :이 totalpages의 동일한 길이 bools의 배열을 만듭니다
new bool[result.TotalPages + 1]
, 기본값은 모두 거짓되고.
.Select(b => true)
이 그들 중 누구도
.ToArray();
LINQ가 IEnumerable을라도 반환하지 않습니다 즉, 해당 항목 만 반환하는 LINQ 쿼리를 사용하므로의 새로운 배열에 다시 갈 필요 처음에는 길이 0을 선택하지 않았습니다.
나는 그것이 그것이하는 것이라고 생각하지만, 어떤 의미가 없다.
"선택"이라는 단어로 혼란스러워 할 때가 있습니다 : ** "필터"** 소스 (그러나'Where'라고합니다); 실제로 그것은 다음을 의미합니다 : ** "프로젝트"** 출처. –