Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- om-4ti
- httpcookie
- 옆집
- 24
- dfs
- 스위프트
- scenedelegate
- Swift
- 연결
- persistence
- 쿠키
- 빝버켓
- IOS
- navigationaction
- swiftdata
- JSON
- WWDC
- xcode
- decidepolicyfor
- 2024
- 빗버켓
- 애러처리
- infoplist
- atlasian
- BFS
- 알고리즘
- wwdc24\
- 데이터구조
- 콜드픽스
- 데이터장소
Archives
- Today
- Total
내가 iOS 개-발자라니.
옆집 스위프트: 1-1) 데이터 구조 - 배열(Array) 본문
나는 스위프트를 잘 알고있는가?
너무 기초이지만 정리한번 해볼까?
데이터구조와 알고리즘을 스위프터에 입장에서 정리한번 해보려 한다.
생각하며 적어가려니 목차는 모르겠다.
일단 배열
1. 배열(Array)
- 배열 생성
// 대괄호를 사용하여 기본 생성
let fruits = ["apple", "banana", "orange"]
// 초기자를 사용하여 생성
let numbers = Array<Int>(repeating: 0, count: 5)
- 배열 접근
// 첫번째는 0의 인덱스를 가짐
let fruits = ["apple", "banana", "orange"]
let fristFruit = fruits[0] //"apple"
let secondFruit = fruits[2] //"orange"
- 배열 수정
// 추가, 제거, 삽입, 반전
var fruits = ["apple", "banana", "orange"]
fruits.append("grapes") //["apple", "banana", "orange", "grapes"]
fruits.remove(at: 1) //["apple", "orange", "grapes"]
fruits.insert("kiwi", at: 2) //["apple", "orange", "kiwi", "grapes"]
fruits.reverse() //["grapes", "kiwi", "orange", "apple"]
let originalFruits = fruits.reversed() //["apple", "orange", "kiwi", "grapes"]
- 배열 연산
// 정렬, 필터링, 매핑, 축소
var numbers = [5, 2, 8, 1, 9]
var words = ["Swift", "is", "awesome"]
numbers.sort() //[1, 2, 5, 8, 9] - 정렬
let evenNumbers = numbers.filter($0 % 2 == 0} //[2, 8] -> 필터링
let containsFive = numbers.contains(5) //true -> 필터링
let squaredNumber = numbers.map{$0 * $0} //[1, 4, 25, 64, 81] -> 매핑
let sum = numbers.reduce(0, +) //25 -> 축소(배열의 합)
let product = numbers.reduce($0 * $1) //720 -> 축소(배열의 곱)
let sentence = words.reduce("") { $0 + ($0.isEmpty ? "" : " ") + $1 }
//"Swift is awesome" -> 축소(문자열 배열 연결)
'This is da(大) SWIFT' 카테고리의 다른 글
옆집 스위프트: 1-3) 데이터 구조 - 스택(Stack)과 큐(Queue) (0) | 2025.03.12 |
---|---|
옆집 스위프트: 1-2) 데이터 구조 - 문자열(String) (0) | 2025.03.11 |
옆집 스위프트: Swift Cookie 종속성 (0) | 2024.07.04 |
옆집 스위프트: 웹뷰 에러코드 처리 (0) | 2024.07.02 |
옆집 스위프트: WWDC 24 SwiftData 커스텀 데이터 저장소 예제 (0) | 2024.06.26 |