일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- SwiftUI
- 가상 메모리
- forEach
- struct
- core data
- Linked List
- 데드락
- 오브젝트
- 앨런
- UserDefaults
- Swift
- decode
- 운영체제
- 100 days of SwiftUI
- Apple Developer Academy
- IOS
- 비동기
- async
- 프로세스 스케줄링
- 동시성
- 알고리즘
- COLOR
- 상호배제
- 인프런
- Codable
- Algorithm
- 동기화
- @state
- 파일 시스템
- deadlock
Archives
- Today
- Total
기어가더라도 제대로
Swift 220511.til 본문
1. 배열, 딕셔너리, 클래스를 속성으로 선언할때 옵셔널 타입으로 선언하고 선언을 안해주게되면, 값을 입력할 때 값이 들어가지 않는다.
이 속성들에 값이 어떻게 들어가는지 유추해 보길 바란다.
정답은 밑에 적어놓겠다. 마지막은 딕셔너리에 값으로 배열을 가지고 있는 경우를 초기화하는 코드이다. 좀 복잡해서 적어놓았다.
`.reduce(into: 반환타입) { 반환타입[벨류] = [] }` 로 초기화를 해주었다. 여기에 설명을 덧붙이자면, reduce(into: ) 라는 메서드는
매개변수로 받는 값이 초기값이면서, 그 값의 메모리 주소에 앞으로 오는 인자들을 받겠다는 선언이다. 그래서 반환타입이라 부르는 것도 애초에 그 값으로 시작을 하고 그값이 변경을 거치면서 타입이 그대로이기 때문에 초기값의 타입 == 반환 타입인 것이다.
2. for 문을 돌면서 해당 값의 인덱스도 알고 싶다면 enumerated() 를 붙여주면 좋다.
# 1번 정답
'기타' 카테고리의 다른 글
홈 커밍 데이 (0) | 2022.06.05 |
---|---|
220530 TIL (0) | 2022.05.30 |
0425 TIL (Persistance Data) (0) | 2022.04.25 |
todo app 개발하면서 학습해야하는 키워드 (2) | 2022.04.16 |
강제 말고 임대하세요 (0) | 2022.04.09 |
Comments