Skip to content

Latest commit

 

History

History

2.Loop_Switch_Guard

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 

반복문, 스위치문, guard문

반복문

  • for
for a in 1...10 {
	print(a) // 1, 2, ..., 8, 9, 10
}

for b in (1...10).reversed() {
	print(b) // 10, 9, ..., 3, 2, 1
}

for number in stride(from: 1, to: 15, by: 2) {
	print(number) // 1, 3, 5, 7, 9, 11, 13, 15
}

stride‘성큼 성큼 걷다’ 라는 의미를 가지고 있다

  • while
var sum = 0

while num <= 50 {
	num += 1 // 0 ~ 50
}

  • repeat-while
var i = 1

repeat {
	i += 1
} while <= 9 

while 문과 다르게 일단 한번 실행하고 나서, 조건을 판단해서 실행함

  • 레이블이 매겨진 문장과 continue, break의 사용
OUTER: for i in 0...3 {
	print("OUTER \(i)")
	INNER: for j in 0...3 {
		if i > 1 {
			print(" j :", j)
			break OUTER
		}
	}
	print("  INNER \(j)")
}

labeled를 이용하면 인접 이외의 범위도 제어가 가능하다

스위치문

switch a {
case 1:
	print(a)
case 2:
	fallthrough // 안녕하세요 실행
case 3:
	print("안녕하세요")
default:
	break
}

guard문

💡 if문은 여러개의 조건이 있을때 코드의 가독성이 문제되는데, guard문으로 사용함으로써 가독성이 안좋은 단점을 극복 할 수 있다.

func checkNumbersOf2(password: String) -> Bool {
	guard password.count >= 6 else { return false }

	// 로그인을 처리하는 code

	return true
}

함수에서 guard문을 쓰면 early exit(조기 종료)을 할 수 있다.