삼항연산자 중첩사용

Angela Jeong·2024년 2월 7일
0

Flutter Troubleshooting

목록 보기
5/19
post-thumbnail

한 페이지 안에서 상황에 따라 버튼, 텍스트를 다양하게 표현하려고 하니 경우의 수가 한 두가지가 아니라 삼항연산자로 구현이 어려웠다.

그런데 찾아보니 삼항 연산자 안에 또 다른 삼항연산자를 넣으면 중첩 사용이 가능했다!!
분기를 계속 나누면 상황에 따라 UI를 달리 보여줘야할 때 유용한 것 같다.

기본 삼항연산자

bool isRaining = true;
String weather = isRaining ? '비가 옵니다' : '비가 오지 않습니다';

중첩 삼항 연산자

myFoodItem.isPublic
                  ? Text('공용 음식이에요')
                     : myFoodItem.isOld
                      ? Text('곧 폐기됩니다.')
                      : myFoodItem.isExtended
                          ? Text('더이상 연장이 불가해요')
                          : Text('아직은 연장이 불가해요')
  • isPublic으로 1차 분기를 하고, isOld로 2차 분기, isExtended로 3차 분기를 했다.
    1) isPublic true: '공용음식이에요'
    2) isPublic false, isOld true: '곧 폐기됩니다'
    3) isOld false, isExtended true: '더이상 연장이 불가해요'
    4) isOld false, isExtended false: '아직은 연장이 불가해요'

경우의 수를 쭉 나열하다보면 쉽게 활용이 가능하다.

0개의 댓글