KWiOS
KWiOS0101
KWiOS
  • 분류 전체보기 (108)
    • Algorithm (41)
      • 이코테 (14)
      • 이코테 문제풀이 (21)
      • 프로그래머스 (6)
    • CS (1)
      • 모두를 위한 컴퓨터 과학(CS50 2019) (0)
    • iOS (15)
    • Swift (36)
      • Swift문법 (32)
      • 기타 (4)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 6

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
KWiOS

KWiOS0101

Swift/Swift문법

Swift문법 - Subscript

2023. 3. 26. 15:38

Subscript

  • 컬렉션, 리스트, 시퀀스 타입의 특정한 멤버 요소에 접근할 수 있는 문법

    예를들면
    let list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
    list[0] // 1
    리스트 배열에서 [0] 으로 배열의 첫번째 위치에 값을 찾아가는 문법을 말한다.

기본 문법 📝
instance[index]
instance[key]
instance[range]
subscript(parameters) -> ReturnType {
    get {
        return expression
    }
    set(name) {
        satamants
    }
  • parameters - 입출력파라미터로 선언하거나 파라미터 기본값 지정 불가능, 서브스크립트를 통해 값을 받아야하기 떄문에 파라미터 생략 불가능

  • ReturnType - 리턴형을 저장하는 값에 자료형으로 사용하기 때문에 리턴형 생략 불가능

  • 겟블록과 셋블록을 모두 구현하면 서브스크립트를 통해서 값을 읽고 쓸수있다.

  • 서브스크립트에서는 파라미터 이름이 아규먼트 레이블로 사용되지 않는다

  • 사용하려면 직접 선언해야함 (잘 사용안함)

// test 코드
class Test {
    var numberData = [1,2,3,4,5,6,7,8,9,10]

    subscript(index: Int) -> Int {
        get {
            return numberData[index]
        }
        set {
            numberData[index] = newValue
        }
    }
}

let test = Test()
test.numberData // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
test[2] // 3
test[1] = 10 // 10
test.numberData // [1, 10, 3, 4, 5, 6, 7, 8, 9, 10]

'Swift > Swift문법' 카테고리의 다른 글

Swift문법 - Method  (0) 2023.04.16
Swift문법 - self & super  (0) 2023.04.02
Swift문법 - Properties  (0) 2023.03.19
Swift문법 - Struct and Class  (0) 2023.03.12
Swift문법 - Enumeration  (0) 2023.03.05
    'Swift/Swift문법' 카테고리의 다른 글
    • Swift문법 - Method
    • Swift문법 - self & super
    • Swift문법 - Properties
    • Swift문법 - Struct and Class
    KWiOS
    KWiOS

    티스토리툴바