Search
Duplicate

while let 구문

생성일
2024/07/31 13:07
태그
Grammar

while let 구문

기본 구조

while let constantName = optionalExpression { // 반복할 코드 } // constantName: 옵셔널 값을 안전하게 언래핑한 값을 담을 상수 // optionalExpression: 옵셔널 값을 반환하는 표현식 // 옵셔널 값이 nil이 아니면 블록 내부의 코드가 실행된다. // 반복이 시작될 때마다 옵셔널 값이 다시 평가된다.
Swift
복사

예제 코드

var optionalNumbers: [Int?] = [1, 2, nil, 4, nil, 6] while let number = optionalNumbers.first { optionalNumbers.removeFirst() if let unwrappedNumber = number { print("Number: \(unwrappedNumber)") else { print("Nil encountered") } } // 옵셔널 배열 optionalNumbers에서 요소를 하나씩 제거하고, 그 값이 nil이 아닌 경우 출력한다. // optionalNumbers.first가 nil이 되면 반복 종료
Swift
복사

옵셔널 바인딩?

옵셔널 바인딩은 옵셔널 값이 nil이 아닌 경우 해당 값을 안전하게 언래핑하여 사용할 수 있도록 하는 방법이다.
if letguard let 구문에서 사용된다.

if let 과 차이점

if let 은 조건문 내에서 한 번 옵셔널 값을 검사하고, 값이 존재하면 블록 내부 코드를 실행한다.
while let 은 루프가 반복될 때마다 옵셔널 값을 검사하고, 값이 존재하면 블록 내부 코드를 반복해서 실행한다.