배열 메서드
Coddy Swift 여정의 기초 섹션에 포함된 레슨 — 86개 중 65번째.
요소를 추가하고 제거하는 것 외에도, Swift 배열은 컬렉션 작업을 더 쉽게 만들어 주는 여러 유용한 메서드들을 제공합니다.
isEmpty 프로퍼티는 배열에 요소가 있는지 확인합니다:
var tasks = [String]()
print(tasks.isEmpty) // true
tasks.append("Buy groceries")
print(tasks.isEmpty) // false모든 요소를 한 번에 제거하려면 removeAll()을 사용합니다:
var numbers = [1, 2, 3, 4, 5]
numbers.removeAll()
print(numbers) // []reversed() 메서드는 요소들을 역순으로 반환합니다:
let letters = ["A", "B", "C"]
print(Array(letters.reversed())) // ["C", "B", "A"]정렬을 하려면, sorted()를 사용하여 새로운 정렬된 배열을 얻거나, sort()를 사용하여 배열을 그 자리에서 정렬하십시오:
let scores = [85, 42, 97, 63]
print(scores.sorted()) // [42, 63, 85, 97]
var prices = [9.99, 2.50, 5.75]
prices.sort()
print(prices) // [2.5, 5.75, 9.99]sorted()는 원본을 변경하지 않고 새로운 배열을 반환하는 반면, sort()는 원본 배열을 직접 수정한다는 점에 유의하세요.
챌린지
쉬움scores를 받아서 점수에 대한 정보가 포함된 형식화된 문자열을 반환하는 processScores 함수를 작성하세요.
이 함수는 배열을 분석하고 세 가지 정보가 포함된 결과 문자열을 생성해야 합니다.
로직:
isEmpty를 사용하여 배열이 비어 있는지 확인합니다.- 비어 있다면,
"No scores"를 반환합니다. - 비어 있지 않다면, 정렬된 점수(오름차순)와 뒤집힌 점수 배열을 가져옵니다.
- 두 결과를 결합한 문자열을 반환합니다.
매개변수:
scores([Int]): 정수 점수 배열
반환값: "Sorted: [sorted_array], Reversed: [reversed_array]" 형식의 문자열 또는 배열이 비어 있는 경우 "No scores" (String)
예시: scores가 [85, 42, 97, 63]인 경우, 함수는 다음을 반환해야 합니다:
"Sorted: [42, 63, 85, 97], Reversed: [63, 97, 42, 85]"참고: 뒤집힌 배열은 정렬된 배열이 아닌 원본 배열의 역순이어야 합니다.
치트 시트
Swift 배열은 컬렉션을 다루기 위한 몇 가지 유용한 메서드를 제공합니다:
isEmpty 프로퍼티는 배열에 요소가 포함되어 있는지 확인합니다:
var tasks = [String]()
print(tasks.isEmpty) // true
tasks.append("Buy groceries")
print(tasks.isEmpty) // false배열에서 모든 요소를 제거하려면 removeAll()을 사용하세요:
var numbers = [1, 2, 3, 4, 5]
numbers.removeAll()
print(numbers) // []reversed() 메서드는 요소들을 역순으로 반환합니다:
let letters = ["A", "B", "C"]
print(Array(letters.reversed())) // ["C", "B", "A"]정렬을 하려면 sorted()를 사용하여 새로운 정렬된 배열을 생성하거나, sort()를 사용하여 원본 배열을 직접 정렬하세요:
let scores = [85, 42, 97, 63]
print(scores.sorted()) // [42, 63, 85, 97]
var prices = [9.99, 2.50, 5.75]
prices.sort()
print(prices) // [2.5, 5.75, 9.99]sorted()는 원본을 수정하지 않고 새로운 배열을 반환하는 반면, sort()는 배열을 직접 수정합니다.
직접 해보기
func processScores(scores: [Int]) -> String {
// 여기에 코드를 작성하세요
}
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.