반응형

iOS/문법 9

[iOS, Swift] Swift 문법 sorted 예제

iOS 16.1, Xcode 14.2, Swift 5, UIKit 환경에서 진행했습니다. Swift는 iOS와 macOS를 위한 프로그래밍 언어로, C와 Objective-C에 기반을 둔 Apple의 공식 언어입니다. Swift는 안전하고 빠르며 현대적인 프로그래밍 패러다임을 따르는 강력한 언어입니다. Swift에서는 Sorted라는 중요한 기능이 있습니다. Sorted는 배열을 정렬하는 데 사용되며, 이 글에서는 Sorted의 기능과 사용 방법을 자세히 설명하겠습니다. Swift에서 Sorted 함수는 배열을 정렬하는 데 사용됩니다. Sorted 함수는 기본 정렬 기준으로 배열을 정렬합니다. 배열의 요소가 기본 정렬 기준을 따르지 않는 경우, 사용자 정의 비교 연산자를 제공하여 Sorted 함수로 전달..

iOS/문법 2023.03.12

[iOS, Swift] 구조체와 클래스의 차이

구조체는 값 타입이고 클래스는 참조 타입입니다. 값 타입과 참조 타입이 다른 점은 값 타입을 넘긴다면 전달될 값이 복사되어 전달됩니다. 참조타입을 넘긴다면 참조(주소)를 복사하여 전달됩니다. 애플의 가이드라인에서는 다음 조건 중 하나 이상 해당된다면 구조체를 사용하는 것을 권장합니다. - 연관된 간단한 값의 집합을 캡슐화하는 것만이 목적일 때 - 캡슐화한 값을 참조하는 것보다 복사하는 것이 합당할 때 - 구조체에 저장된 프로퍼티가 값 타입이며 참조하는 것보다 복사하는 것이 합당할 때 - 다른 타입으로부터 상속받거나 자신을 상속할 필요가 없을 때

iOS/문법 2023.02.13

[iOS, Swift] Swift 문법 compactMap 예제

iOS 16.1, Xcode 14.1, Swift 5, UIKit 환경에서 진행했습니다. nil 값을 가질 수 있는 객체를 뜻하는 Optional은 값을 감싸고 있는 객체입니다.compactMap은 이러한 감싸고 있는 객체를 제거하고 평평하게 (flatMap으로 쓰였으나, 스위프트 4버전 이후로 compactMap으로 불립니다.) 만든 후 컨테이너로 감싸주는 역할을 합니다. let optionalIntArray = [Optional(1), Optional(2), nil, Optional(3)] let result = optionalIntArray.compactMap({$0}) print(result) // [1, 2, 3]

iOS/문법 2023.02.09

[iOS, Swift] Swift 문법 Reduce 예제

iOS 16.1, Xcode 14.1, Swift 5, UIKit 환경에서 진행했습니다. 컨테이너에서 사용할 수 있는 Reduce 함수는 두가지 종류가 있습니다. initialResult와 nextPartialResult를 쓰는 함수는 초기값이 initialResult에 들어가고 nextPartialResult에 값이 업데이트 되는 함수입니다. let sum1 = [1, 2, 3].reduce(0) { partialResult, next in // partialResult = 0, next = 1 // partialResult = 1, next = 2 // partialResult = 3, next = 3 return partialResult + next } 결과로는 sum1 변수에 6이 저장됩니다. i..

iOS/문법 2023.02.07

[iOS, Swift] Swift 문법 Filter 예제

iOS 16.1, Xcode 14.1, Swift 5, UIKit 환경에서 진행했습니다. Filter는 컨테이너 내부의 값을 걸러서 추출하는 역할을 합니다. Filter 함수의 매개변수로 전달되는 함수의 반환타입은 Bool입니다. let numbers: [Int] = [0, 1, 2, 3, 4, 5] let evenNumbers: [Int] = numbers.filter { (number: Int) -> Bool in return number % 2 == 0 } print(evenNumbers) // [0, 2, 4] 클로져 간략화 let evenNumbers: [Int] = numbers.filter { $0 % 2 == 0 }

iOS/문법 2023.02.02

[iOS, Swift] Swift 문법 Map 예제

iOS 16.1, Xcode 14.1, Swift 5, UIKit 환경에서 진행했습니다. Map은 자신을 호출할 때, 매개변수로 전달된 함수를 실행하여 그 결과를 반환해주는 함수입니다. Map을 사용하면 컨테이너가 담고 있던 값을 매개변수로 받은 함수를 통해 컨테이너에 포장하여 반환됩니다.기존 데이터를 변형하는데 많이 사용합니다. let numbers: [Int] = [0, 1, 2, 3, 4] var doubleNumbers: [Int] = [Int]() doubleNumbers = numbers.map({ (number: Int) -> Int in return number * 2 }) print(doubleNumbers) // [0, 2, 4, 6, 8] 클로져 간략화 doubleNumbers = n..

iOS/문법 2023.02.01
반응형