[c#] 삼항연산자로 조건문 간결하게 하기

삼항연산자 또는 삼항 조건 연산자ternary conditional operator ?:를 이용하면 조건문을 간결하게 할 수 있다. ternary는 ‘세 개를 한 묶음으로 하는 것’이라는 뜻이다.

예를 들면 정수를 담은 리스트가 있다. 아이템들 개수가 열 개 이상이면 앞의 열 개만 2로 바꾸고 열 개 미만이면 모든 아이템들을 2로 바꾼다.

List<int> ints = new();

ints.Add(1);

if (ints.Count < 10)
{
    for (int i = 0; i < ints.Count; i++)
    {
        ints[i] = 2;
    }
}
else
{
    for (int i = 0; i < 10; i++)
    {
        ints[i] = 2;
    }
}

삼항연산자를 써서 아래와 같이 바꿀 수 있다.

for (int i = 0; i < (i < 10 ? ints.Count : 10); i++)
{
    ints[i] = 2;
}