오늘도 다트다트 투척입니다~~
(구글에 다트라고 검색하면 다트판만 나오네요.. 머쓱,,)
22년 6월 5일 오늘의 키워드는 if, for, enum 입니다.
코딩을 하면서 어찌보면 가장 많이 사용하는 부분이 아닐까 생각됩니다~~
조건식에 따라 수행을 결정하는 가장 일반적인 방식입니다.
조건식 1이 false라면 조건식 2를 검사하고 true라면 수행합니다.
int number = 3;
if(number % 2 == 0) { // 조건식1
print('나머지가 0입니다.');
}
else if (number % 2 == 1) { // 조건식2
print('나머지가 1입니다.');
}
else { // 조건식1,2 모두 false일 때 수행합니다.
print('나머지가 2입니다.');
}
조심하자!!
if(3!=3) // false
print('실행4'); // if 내부 코드
print('실행5'); // 실행
중복 if
int num = 6;
if (num % 2 == 0) {
print('$num은 2의 배수');
if (num % 3 == 0) {
print('$num은 3의 배수');
}
}
꼭 if를 사용해야만 할까요? 그건 아닙니다. switch를 사용할 수 있습니다.
// number = 2
switch(number % 2) { // 조건식을 수행했을 때 결과가 0이면 case0을 1이면 case1을 수행합니다.
case 0:
print('나머지가 0입니다');
break;
case 1:
print('나머지가 1입니다');
break;
default:
print('나머지가 2입니다');
break;
}
기존에 주로 접하던 반복문
int형 List의 모든 데이터를 더 해봅시다!
List<int> numbers = [1,2,3,4,5,6];
int total = 0;
for (int i = 0; i<numbers.length; i++) {
total += numbers[i];
}
print(total); // 21
in을 이용할 수도 있습니다.
상단과 같은 코드입니다.
for(int number in numbers) { // numbers를 number에 하나씩 대입합니다.
total += number;
}
중간에 if, break, continue 를 넣어볼까요?
for (int i =0; i < numbers.length; i++) {
// i가 5일때 스킵
if(i == 5) {
continue;
}
total += numbers[i];
}
처음 접해보는 개념입니다. 아직까지도 생소하지만 공부한 부분을 정리정리 합니다.
enum 선언
enum Status {
approved, // 승인
pending, // 대기
rejectd, // 거절
}
// enum 사용
Status status = Status.pending;
if (status == Status.pending) {
print('대기 상태입니다');
}
❗️❗️ 으아닛... 잠깐만요. 이거 그냥 String status = 'pending'; 일케 쓰면 되자나염???
-> 해당 enum Status에는 정확히 3개의 값만 존재한다는 것을 다른 개발자 혹은 미래에 개발하는 타인이 쉽게 파악할 수 있습니다. 또한 String을 사용하였을때 발생할 수 있는 오타 등을, enum 사용을 통해 방지할 수 있습니다.
또 위에서도 언급했지만, 조건식에서 0,1,2 와 같이 코드를 작성하면 이게 무엇을 뜻하는지 단번에 이해하기 어려울 확률이 높습니다. (작성한 본인도 시간이 지나면 까먹을 수 있습니다.) 명확하게 나타내주면 역시 이해하기가 더욱 편할 것입니다.