일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |
- 애자일기법
- cleancode
- 백준
- 그리디알고리즘
- 코딩테스트
- ES
- 알고리즘
- 읽기쉬운코드
- 개발
- 데이터베이스
- 애자일
- 개발자
- 엘라스틱서치
- database
- 스프링
- 애자일프로그래밍
- 코딩
- 프레임워크
- Baekjoon
- spring boot
- JPA
- 자바
- API
- Java
- 클린코드
- Elasticsearch
- 코드
- 그리디
- framework
- Spring
- Today
- Total
튼튼발자 개발 성장기🏋️
러스트 7 - 제어문과 반복문 본문
Rust도 똑같다!
1. 제어문
개발을 하다 보면 꼭 분기쳐야 하는 순간이 종종 있다. 그럴 때 보통 제어문을 사용한다. (꼭 베스트는 아니다.)
제어문 if표현식은 조건에 따라 실행되는 녀석이다.
if를 직역한 그대로 "만약 ~라면 실행" 혹은 "만약 ~가 아니라면 실행"이라고 생각하자.
즉, 아래 언급하는 조건식은 항상 꼭 무조건 boolean(참 혹은 거짓 : true false)값을 가져야 한다!
if 조건식 {
① 조건식이 참일 경우 실행할 블록
} else {
② 조건식이 거짓일 경우 실행할 블록
}
만약 조건식이 참일 경우 ①번 블록이 실행 된다면!!! ②번 블록은 처다도 보지 않는다.
조건식과 블록을 잘 짠다면 속도면에서 성능을 높일 수 있을 것 같다.
조건식을 많이 걸어야하는 경우, else if문을 사용하면 된다.
다음은 조건식에서 많이 사용하는 녀석들을 모아둔 코드이다.
급하게 짜느라 개판 5분 전이지만....ㅎㅎㅎㅎㅎ
앞서 언급했지만 if문은 표현식이다. 즉! 변수 선언할 때 사용할 수 있다는 것.
if문에서 반환되는 값이 if_num에 저장된다.
세미콜론(;)을 잊지말자. (잊더라도 cargo가 위치와 오류 내용을 딱! 찝어주기 때문에 딱히 뭐...걱정 하지 않아도 되지만... 너무 의지하지말자)
if와 else는 하나다! if~else문 혹은 if~if else~else문이라고 하지 않는가!?
다음 코드와 결과를 한 번 보자.
cargo는 정말 대단하고도 신기한 녀석.... 이리도 친절하고 정확한 결과를 본적이 없다.....(감탄중)
컴파일을 돌 때, if_num이라는 녀석에 값을 bind해야 하는데 어떤 블록은 1(정수)을 반환하고 어떤 블록은 문자열을 반환해버리면 안되지!!!!
이 말이 이해가 되지 않는 다면 <변수와 타입 #2> (https://maeng-dev.tistory.com/9) 포스팅을 한 번 더 보길 바란다.
rust는 statically typed language이다. 명심하자.
2. 반복문
가장 많이 사용하는 녀석중 하나인 반복문... 어떨 때는 짜증나고 쓰기 싫은 녀석인데. 언제는 효자같은 녀석이다.
rust에서 제공하는 반복문 for, while, loop문을 알아보자.
2-1. for문
배열의 index는 0부터 시작하는 것쯤은 모두가 알고 있는 사실.
for문의 포맷은 다음과 같다.
for variable in iterator {
// TODO : Code to execute
}
한 마디로 arr의 있는 녀석들(element)를 v에 담아서 실행하겠다(?)라고 이해하면 쉽게 응용할 수 있을 것 같다.
2-2. while문
while문의 포맷을 보자.
while expression {
// TODO : Code to execute
}
즉, 조건식이다. 가장 먼저 조건식이 참이면 실행하고 다시 검사하는 방식.
참 -> 실행 -> 참 -> 실행 -> ........ -> 거짓 -> 끝 이라는 것!!!
2-3. loop문
loop문의 포맷은!??!?
loop {
// TODO : Code to execute
}
뭐가 없다..... 조건식도 없고 index도 없고....단순 그 자체.
한 마디로 무조건. 꼭! 무슨일이 있어도 항상 실행하는 녀석이라는 것. 그렇기 때문에 무한루프에 빠지기 쉽다.
(만약 무한루프에 빠졌다면 ctrl + c를 누르세요ㅎㅎㅎㅎㅎ)
'프로그래밍 > RUST' 카테고리의 다른 글
러스트 9 - Ownership : 소유권 #1 (0) | 2019.02.24 |
---|---|
러스트 8 - 주석 (0) | 2019.02.23 |
러스트 6 - 함수 (0) | 2019.02.17 |
러스트 5 - 변수와 타입 #2 (0) | 2019.02.16 |
러스트 4 - 변수와 타입 #1 (0) | 2019.02.16 |