| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 리뷰
- Kubernetes
- docker
- clone
- 영화
- 엔지니어
- Ai
- 파이썬
- DART
- Gemma
- ultralytics
- image
- Python
- coding
- 인공지능
- YOLO
- chatGPT
- FunctionGemma
- Flutter
- 야호
- Type
- container
- Fultter
- GenAI
- 클론코딩
- 논문리뷰
- 구글
- 딥러닝
- llm
- lightly
Archives
- Today
- Total
딥러닝 공부방입니다. 근데 이제 야매를 곁들인.
Dart 조건 분기 본문
if else 문이다
이 이상 설명이 필요하지 않은 것 같다.
때로는 새로운 언어를 배울 때 그냥 그냥 넘어가는 것도 좋은 것 같다
Conditional Expression
은 짚고 넘어가자.
간단한 조건 로직의 경우 한 문장으로 쓸 수 있다.
condition ? expr1 : expr2
condition 이 만족하는 경우 expr1 을
아닌경우 expr2 를 수행(리턴)한다.
expr1 ?? expr2
expr1 값이 null 이 아니라면 expr1 을
null 이라면 expr2 를 수행(리턴)한다.
상황에 따라 잘 골라쓰면 될 것 같다.
예상하기로는
우선순위가 고려되는 로직의 경우 ?? 구문을 쓰는 것이 훨씬 가독성이 좋을 것 같다.
반대로 우선순위가 없는 단순 조건 분기의 경우에는 ? : 를 쓰는 것이 좋을 것 같다.
Switch and case
c 언어의 switch 문과 사용법이 동일하다.
var command = 'OPEN';
switch (command) {
case 'CLOSED':
executeClosed();
break;
case 'PENDING':
executePending();
break;
case 'APPROVED':
executeApproved();
break;
case 'DENIED':
executeDenied();
break;
case 'OPEN':
executeOpen();
break;
default:
executeUnknown();
}
switch () 괄호안에 어떤 변수를 기준으로 분기할 것인지를 정해주고
각 case 와 == 인 경우 case 문의 내용이 수행된다.
그리고 case 마지막에는 꼭 break; 을 넣어줘야한다.
(c 에서는 break 없이도 동작했던 것 같은데...)
만약 여러 분기에서 조건을 걸고 싶다면 continue 를 사용할 수 있다.
var command = 'CLOSED';
switch (command) {
case 'CLOSED':
executeClosed();
continue nowClosed;
// Continues executing at the nowClosed label.
nowClosed:
case 'NOW_CLOSED':
// Runs for both CLOSED and NOW_CLOSED.
executeNowClosed();
break;
}
좋은 코드 인지는 모르겠지만 유즈 케이스가 아예 없지는 않을 것 같긴하다.
'지식 > Flutter' 카테고리의 다른 글
| [Flutter] 개요 (0) | 2023.01.29 |
|---|---|
| Dart 반복문 (0) | 2023.01.23 |
| Dart functions (0) | 2023.01.23 |
| Dart Final 과 Const (0) | 2023.01.21 |
| Dart 자료형 (1) | 2023.01.21 |