Collection - Dicitionary
3.29(화)
제가 이해하고 공부 한대로 작성한 내용이다 보니 , 정확한 정보가 아닐수도 있습니다
고쳐야 할 부분이 있다면 , 편하게 애기 해주시면 감사 하겠습니다🙏🏻
Dicitionary
Dictionary는 key와 value로 데이터를 저장하는 컨테이너입니다.
각각의 value는 유일한 키 값에 물려있으며, key값은 Dictionary안에서 value를 찾기 위하 식별자역할을 합니다.
Swift에서 Dictionary는 Dictionary<KeyType, ValueType>형태로 쓰입니다.
유일한 제약사항이 하나 있는데, 반드시 KeyType은 해쉬가능한 타입어야합니다.(Hashable)
즉, 그 자체로 유일하게 표현이 가능한 방법을 제공해야 합니다.
스위프트의 기본 타입(String, Int, Double..등)은 기본적으로 해쉬가능한 것들이므로 Dictionary의 KeyType으로 사용가능합니다 .
또한, Swift의 열거형, 즉 enum역시 해쉬가능하므로 들어갈 수 있습니다.
Dictionary사용 방법
- Dictionary생성하는 방법
KeyType이 Int고, ValueType이 String인 Dictionary를 생성하는 방법입니다.
var dic : [Int : String] = [:]
var dic2 = [Int : String]()
var dic3 : Dictionary = [Int:String]()
var dic4 : Dictionary<Int, String> = Dictionary<Int, String>()
- Dictionary 생성과 동시에 초기화
var dic : [Int : String] = [1:"Roy", 2:"swift", 3:"iOS"]
var dic2 = [1:"Roy", 2:"swift", 3:"iOS"]//타입유추. [Int:String]인 Dictionary구나
var dic3 : Dictionary = [1:"Roy", 2:"swift", 3:"iOS"]
var dic4 : Dictionary<Int, String> = [1:"Roy", 2:"swift", 3:"iOS"]
//모두 [1:"Roy", 2:"swift", 3:"iOS"]를 넣었지만, 출력이 이순서대로 된다고 보장할 수 없다. Dictionary는 순서가 없기때문
- Dictionary값 수정
(이제 메소드를 사용하고 나서의 Dictionary안의 값들이 어떻게 변했는지 보여드릴텐데요, 임의로 Key순서대로 나타내도록 하겠습니다.
다시한번 말씀드리지만, Dictionary안의 순서는 의미가 없습니다. 실제로 Print해보시면 순서가 뒤죽박죽인 것을 볼 수 있을거에요.)
var dic : [Int : String] = [1:"zedd", 2:"swift", 3:"iOS"]
dic.updateValue("fun", forKey: 3)
print(dic)//[1:"Roy", 2:"swift", 3:"fun"]
dic[3] = "iOS"
print(dic)//[1:"Roy", 2:"swift", 3:"iOS"]
⛺️ 문제점 / 고민한 점 / 느낀점
- 딕셔너리에 대해 모르던 개념을 한번더 이해를 했다 !
- 집나간 개념을 찾아오고 있다
- 모른는 개념을 조금더 집어가고 왜 라는 질문을 자주 던져 보자!!
⛺️ 참고 자료
Author And Source
이 문제에 관하여(Collection - Dicitionary), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@suhwj/Collection-Dicitionary-adgl7yks저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)