C#에서 리스트(List)에 담긴 값들 중 최솟값과 최댓값을 구하는 방법을 알아보겠습니다. LINQ에서 제공하는 Min()과 Max() 메서드를 사용하면 단 한 줄의 코드로 손쉽게 처리할 수 있습니다.
리스트 설정하기
먼저 숫자 요소를 담은 리스트를 생성합니다.
List<long> list = new List<long> { 150, 300, 400, 350, 450, 550, 600 };Min() 및 Max() 메서드
리스트에서 가장 작은 요소를 가져오려면 Min() 메서드를 사용합니다.
list.AsQueryable().Min();
반대로 가장 큰 요소를 가져오려면 Max() 메서드를 사용합니다.
list.AsQueryable().Max();
전체 코드 예제
지금까지 설명한 내용을 바탕으로 작성한 전체 코드는 다음과 같습니다.
using System;
using System.Collections.Generic;
using System.Linq;
class Demo {
static void Main() {
List<long> list = new List<long> { 150, 300, 400, 350, 450, 550, 600 };
foreach(long ele in list){
Console.WriteLine(ele);
}
// 가장 큰 요소 가져오기
long max_num = list.AsQueryable().Max();
// 가장 작은 요소 가져오기
long min_num = list.AsQueryable().Min();
Console.WriteLine("최솟값 = {0}", min_num);
Console.WriteLine("최댓값 = {0}", max_num);
}
}
실행 결과
150
300
400
350
450
550
600
최솟값 = 150
최댓값 = 600
이처럼 LINQ의 Min()과 Max() 메서드를 활용하면 별도의 반복문이나 정렬 없이도 리스트 내 최솟값과 최댓값을 간단하고 효율적으로 구할 수 있습니다.