배열(Array)
여러 개의 데이터 요소를 담을 수 있는 자료 구조
@frozen struct Array<Element>
// 'Int' 요소 배열
let oddNumbers = [1, 3, 5, 7, 9, 11, 13, 15]
// 'String' 요소 배열
let foods = ["Chicken", "Pizza", "Hamburger"]
// 빈 배열 만들기
var emptyFloats: Array<Float> = Array()
var emptyDoubles: [Double] = []
var emptyInts = [Int]()
// 기본값으로 초기화된 배열이 필요할 경우
var digitCounts = Array(repeating: 0, count: 10)
print(digitCounts)
// 출력 -> [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
let foods = ["Chicken", "Pizza", "Hamburger"]
for food in foods {
print("I like \(food).")
}
// 출력 -> I like Chicken.
// 출력 -> I like Pizza.
// 출력 -> I like Hamburger.
let emptyArray = [Int]()
let oddNumbers = [1, 3, 5, 7, 9, 11, 13, 15]
if emptyArray.isEmpty {
print("배열이 비어있습니다.")
} else {
print("배열에 \(oddNumbers.count)개의 값이 들어있습니다.")
}
// 출력 -> 배열이 비어있습니다.
if oddNumbers.isEmpty {
print("배열이 비어있습니다.")
} else {
print("배열에 \(oddNumbers.count)개의 값이 들어있습니다.")
}
// 출력 -> 배열에 8개의 값이 들어있습니다.
let foods = ["Chicken", "Pizza", "Hamburger"]
if let firstElement = foods.first, let lastElement = foods.last {
print(firstElement, lastElement, separator: ", ")
}
// 출력 -> Chicken, Hamburger
let emptyArray = [Int]()
let foods = ["Chicken", "Pizza", "Hamburger"]
print(foods[1]) // Pizza
print(emptyArray[0]) // 빈 배열에 접근하면 에러발생
var fruits = ["Apple", "Mango", "Banana"]
fruits.append("Grape")
fruits.append(contentsOf: ["Strawberry", "Blueberry"])
print(fruits)
// ["Apple", "Mango", "Banana", "Grape", "Strawberry", "Blueberry"]
fruits.insert("Lemon", at: 3)
print(fruits)
// ["Apple", "Mango", "Banana", "Lemon", "Grape", "Strawberry", "Blueberry"]
fruits.removeFirst()
// ["Mango", "Banana", "Lemon", "Grape", "Strawberry", "Blueberry"]
fruits.remove(at: 3)
// ["Mango", "Banana", "Lemon", "Strawberry", "Blueberry"]
fruits.removeLast()
//["Mango", "Banana", "Lemon", "Strawberry"]
var fruits = ["Apple", "Mango", "Banana"]
if let i = fruits.firstIndex(of: "Mango") {
fruits[i] = "Lemon"
}
print(fruits)
// ["Apple", "Lemon", "Banana"]
var fruits = ["Mango", "Banana", "Lemon", "Strawberry", "Blueberry"]
print(fruits.contains("Mango")) // true
print(fruits.first!) // Mango
print(fruits.firstIndex(of: "Lemon")!) // 2
print(fruits.last!) // Blueberry
var numbers = [5, 2, 7, 1, 9]
numbers.sort()
print(numbers) // [1, 2, 5, 7, 9]
var numbers = [5, 2, 7, 1, 9]
var sortedNumbers = numbers.sorted()
print(sortedNumbers) // [1, 2, 5, 7, 9]
var numbers = [5, 2, 7, 1, 9]
numbers.sort(by: <)
print(numbers) // [1, 2, 5, 7, 9]
numbers.sort(by: >)
print(numbers) // [9, 7, 5, 2, 1]