배열 5

스위프트의 배열과 문자열 꿀팁들

공부하다가 스위프트의 배열과 문자열은 파이썬과 달라서 정리해 봅니다. 주의할 점 위주로 정리해 봤습니다. 스위프트에서 문자열을 배열로 바꾸는 법 여러가지가 있으니 코드로 소개해 드리겠습니다. 열거형: let str = "ABC" var arr = [Character]() for i in str { arr.append(i) } print(arr) // ["A", "B", "C"] Array생성자로 직접 변환하기: let str = "ABC" let arr = Array(str) print(arr) // ["A", "B", "C"] map 이용하기: let str = "ABC".map { (n: Character) -> Character in return n } let str = "ABC".map { $0 ..

swift 2022.02.07

스위프트 배열과 enumerated()

스위프트 배열은 어떻게 선언 할까? let emptyArray: [Int] = [] let emptyArray2 = Array() let emptyArray3 = [Int]() 이렇게 3가지가 가능하다. 빈배열을 만들때는 반드시 Type을 명시하도록 하자. 크기가 정해진 배열 2가지로 선언이 가능하다. let zeroArray1 = [Int](repeating: 0, count: 10) // [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] let zeroArray2 = Array(repeating: 0, count: 10) // [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] 1~12까지 숫자가 든 배열 let numbers: [Int] = Array(1...12) 배열에 들어있는 값의 개..

swift 2022.02.03

swift String.Index

파이썬이나 여타 언어들에서는 손쉽게 int로 배열의 인덱스에 접근할 수 있지만 swift의 경우 String.Index 타입을 이용해야한다. 바로 예를 들겠다. a = "abc" print(a[0]) # a 파이썬에서는 이는 너무 당연하다. 하지만 스위프트의 경우 var a = "abc" print(a[a.startIndex]) // a 위의 파이썬 코드와 동일한 코드이다. startIndex와 endIndex는 처음과 끝 인덱스를 의미하지만 endIndex는 파이썬으로 치면 len(a)와 같아서 a라는 문자열이 있다고 치면 a의 길이와 같다. 즉 인덱스 측면에서 봤을때는 1을 빼줘야한다. 코드로 설명하면 var endIndex = a.index(before: a.endIndex) var last = a..

swift 2022.02.03