// 배열에 값을 추가하기
var array = [10, 20, 30]
print(array)
// 배열 마지막에 가하기
// Array가 제공하는 append함수를 사용하면 뒤에 마지막에 값을 추가할 수 있습니다.
array.append(40) // array 변수에 마지막에 40을 추가해주세요 !
print(array) // 출력 값 : [10, 20, 30, 40, 41, 42, 43]
// Array 뒤에 array를 추가할 수 있어요.
array.append(contentsOf: [41, 42, 43])
print(array) // 출력 값 : [10, 20, 30, 40, 41, 42, 43]
// index를 사용하여 원하는 위치에 값 추가하기
// Array의 insert 함수를 사용하면 원하는 index에 값을 넣을 수 있습니다.
array.insert(0, at: 5) // array insert를 호출합니다. insert 함수는 0번째 인덱스에 5를 추가합니다.
print(array) // 출력 값 : [ 5, 10, 20, 30, 40, 41, 42, 43]
// 배열의 값 제거하기
var array = [10, 20, 30, 40, 50]
// Array에서 제공하는 removeLast함수를 사용하면 맨뒤의 값을 삭제할 수 있습니다.
array.removeLast() // array의 removeLast 함수를 호출합니다.
print(array). // [10, 20, 30, 40]
// Array에서 제공하는 removeFist 함수를 사용하면 첫번째 값을 제거할 수 있어요.
array.removeFirst()
print(array) // [20, 30, 40]
// Array에서 제공하는 remove(at: Int) 함수를 사용하면 원하는 인덱스의 값을 제거할 수 있어요.
array.remove(at: 1) // array의 remove 함수를 호출합니다. remove 함수는 1번째 값을 삭제합니다.
print(array) // [20, 40]
// Array에서 제공하는 removeAll 함수를 사용하면 모든 값을 삭제할 수 있습니다.
array.removeAll() // array의 removeAll 함수를 호출합니다.
print(array) // [] 빈배열!
배열 값 추가하기에
append()
부터 나오길래 제거하기에도pop()
부터 나오지 않을까 생각하였는데pop()
을 다뤄주지 않길래 한 번 찾아보았다.
popFist()
, dropFisrt(_:)
메소드와 popLast()
, dropLast(_:)
메소드를 제공합니다.
var numbers = [1, 2, 3] // 원본이 바뀌기 때문에 var 키워드로 선언
numbers.popLast() // return: 3 '뒤에서부터' 요소를 1개 삭제, 삭제한 요소를 옵셔널 형태로 리턴
print(numbers) // [1, 2] // 원본 배열에 마지막 요소 삭제
let numbers = [1, 2, 3] // 원본에 아무런 영향을 주지 않기 때문에 let 키워드로 선언해도 문제가 없음
numbers.dropLast(2) // return: [1] 뒤에서부터 2개를 지우고 새로운 subsequence 타입의 배열을 리턴
print(numbers) // 원본엔 아무런 영향을 주지 않음
Swift를 공부하면서 Swift라는 언어는 type에 관대하지 못한 부분이나 뭔가 기본적으로 헷갈리게 할 요소가 없게 느껴지는 부분이 있다. 그러면서도 간편하게도 할 수 있게끔 할 수 있게 해놓은 느낌인 것 같다... 배열에 대해 더 정리하고 싶었지만 일단 넘어가고 뒤에 강의의 자료구조 부분에서 다시 정리해 볼 예정이다.
// 기본값이 없을 때 생성하는 방법
var emptySet: Set<String> = []
var emptySet2 = Set<String>()
// 기본값이 있을 때 생성하는 방법
var defaultSet: Set<String> = ["A", "B", "C"]
// 기본값이 있을 경우 타입 추론이 가능
var typeInferredSet: Set = ["A", "B", "C"]
// for in 반복문을 사용하여 현재 Set에 있는 값들을 출력할 수 있어요!
for value in typeInferredSet {
print(value)
}
// 위의 for문의 결과는 "A", "B", "C" 순서를 보장하지 않아요!
// Set에서 사용되는 유용한 변수
var defaultSet: Set<String> = ["A", "B", "C"]
// Set에 몇개의 값이 있는지 확인하는 count 변수
defaultSet.count // 3 -> 현재 defaultSet에는 "A", "B", "C" 3개가 저장되어 있습니다.
// Set에 값이 있는지 확인하는 isEmpty 변수
defaultSet.isEmpty // false -> defaultSet은 비어있지 않아서 false가 출력
키(key)
와 값(value)
의 쌍으로 데이터를 저장하는 Collection Type입니다.key
와 valuse
가 쌍으로 저장됩니다.key
는 중복을 허용하지 않고 중복된 key
에 새로운 값을 할당하면 value
가 최신의 값으로 업데이트 됩니다.[ ]
대괄호 안에 :
를 기준으로 key
, value
를 나누어서 사용합니다.key
값에 접근하면 [ ]
대괄호 안에 key
값을 넣으면 됩니다.