Swift에서 제어문을 사용하여 배열에서 특정 조건을 만족하는 값을 필터링할 수 있습니다. 이를 통해 배열 안에서 원하는 요소를 선택적으로 추출할 수 있습니다. 이번 글에서는 Swift의 if
문과 for-in
문을 활용하여 값 필터링을하는 방법을 알아보겠습니다.
1. if
문을 사용한 값 필터링하기
if
문은 조건식의 결과에 따라 특정 블록을 실행하거나 건너뛸 수 있습니다. 이를 활용하여 배열에서 조건을 만족하는 요소를 선택할 수 있습니다. 예를 들어, 정수 배열에서 짝수만 필터링해보겠습니다.
let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
var evenNumbers: [Int] = []
for number in numbers {
if number % 2 == 0 {
evenNumbers.append(number)
}
}
print(evenNumbers) // [2, 4, 6, 8, 10]
위의 예제에서는 numbers
배열을 순회하면서 각 요소를 number
변수에 할당합니다. 그리고 if
문을 사용하여 number
가 짝수인 경우에만 evenNumbers
배열에 추가합니다. 마지막으로 evenNumbers
배열을 출력합니다.
2. for-in
문과 guard
문을 사용한 값 필터링하기
if
문 대신 for-in
문과 guard
문을 사용하여 값 필터링을 할 수도 있습니다. guard
문을 사용하면 조건을 만족하지 않는 경우 함수나 반복문을 종료할 수 있습니다. 이를 활용하여 배열에서 조건을 만족하는 요소를 더욱 간결하게 추출할 수 있습니다. 예를 들어, 문자열 배열에서 길이가 5 이상인 요소만 필터링해보겠습니다.
let names = ["Alice", "Bob", "Charlie", "David", "Eve"]
var longNames: [String] = []
for name in names {
guard name.count >= 5 else {
continue
}
longNames.append(name)
}
print(longNames) // ["Alice", "Charlie"]
위의 예제에서는 names
배열을 순회하면서 각 이름을 name
변수에 할당합니다. 그리고 guard
문을 사용하여 name
의 길이가 5 이상인 경우에만 반복문을 진행합니다. 조건을 만족하지 않으면 continue
키워드를 사용하여 다음 요소로 넘어갑니다. 마지막으로 longNames
배열을 출력합니다.
이처럼 Swift에서 제어문을 사용하여 배열에서 값을 필터링할 수 있습니다. 이를 활용하면 간단하게 원하는 조건을 만족하는 요소만을 추출할 수 있습니다.