[Swift] Collection Type - Array


Swift는 콜렉션(데이터의 집합)을 세가지 형태로 제공한다.
Array, Set, Dictionary 총 세 가지 형태로 나뉘게 된다.
먼저 Array를 살펴본다.

🗂 Array

Array는 순서가 있는 리스트 콜렉션이며, 인덱스를 통해 접근할 수 있다.
공식 도큐먼트는 여기!

Declaration

@frozen struct Array<Element>

Array에서는 다양한 리터럴 문법을 활용할 수 있어서 표현 방법이 정말 다양하다!
선언 방법은 다음과 같다.

var integers_1: Array<Int> = Array<Int>()
var integers_2: Array<Int> = [Int]()
var integers_3 : Array<Int> = []
var integers_4 : [Int] = Array<Int>()
var integers_5 : [Int] = []
var integers_6 = [Int]()

나는

var integer : Array<Int> = []

이 형태가 편하다!


다음은 다양한 element type을 갖는 배열이다.

// An Array of Int elements
var oddNumbers = [1, 3, 5, 7, 11, 13, 17]

// An array of String elements
var fruits = ["apple", "banana", "kiwi", "strawberry"]

배열 element의 타입을 정의해놓으면 empty array를 만들 수 있다.

var intArray : [Int] = []
var doubleArray : [Double] = []

Array(repeating: ,count: ) 이니셜라이저를 이용해서 고정된 갯수의 디폴트 값들을 배열에 지정해줄 수 있다.

var initializedArray = Array(repeating: 0, count: 10)
print(initializedArray) // Print [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

Instance Method 인스턴스 메소드

Array에서는 다양한 메소드를 지원한다. 많이 사용되는 메소드 몇가지를 알아보자.

append

  • single element는 append(_:) 사용한다.
  • muliple elements에는 append(contentsOf:) 를 사용한다.
fruits.append("mango")
fruits.append(contentsOf: ["watermelon", "peach"])

insert

  • insert(at:) : single element를 중간에 삽입
  • insert(contentOf:at:) : multiple element를 중간에 삽입
fruits.insert("pulm", at: 2)
fruits.insert(contentsOf: ["orange", "linchy"], at: 5)

contains

  • contains(_:) : 배열에 해당 원소가 있는지 확인. true / false로 반환
fruits.contains("peach")
fruits.contains("pineapple")

remove

  • remove(at:) : 배열 해당 인덱스의 원소를 지움
  • removeLast(_:) : 마지막 원소를 지움
  • removeAll(_:) : 모든 원소를 지움
fruits.remove(at:2)
fruits.removeLast()
fruits.removeFirst()
fruits.removeAll()

firstIndex / lastIndex

  • firstIndex(of:) : 해당 원소가 가장 첫번째로 나오는 인덱스
  • lastIndex(of:) : 해당 원소가 가장 마지막으로 나오는 인덱스

Instance Property 인스턴스 프로퍼티

count


count는 앞서 봤던 것들과는 다르게 Instance Property다.
count : 원소의 갯수만큼 Int형으로 반환

var integers : Array<Int> = [1, 2, 3, 4]
integers.count

first / last

배열의 첫번째 / 마지막 원소를 나타냄

integers.first
integers.last

좋은 웹페이지 즐겨찾기