Swift: 빈 사전을 선언합니다.
나는 배우기 시작했다swift
iBook을 따르는 것-The Swift Programming Language
Swift에 탑재되어 있습니다.책에는 빈 사전을 만들라고 쓰여 있다.[:]
어레이를 선언할 때와 같음[]
:
다음과 같이 빈 어레이를 선언했습니다.
let emptyArr = [] // or String[]()
그러나 빈 사전을 선언하면 구문 오류가 발생합니다.
let emptyDict = [:]
빈 사전을 선언하려면 어떻게 해야 하나요?
var emptyDictionary = [String: String]()
var populatedDictionary = ["key1": "value1", "key2": "value2"]
참고: 사전의 내용을 시간이 지남에 따라 변경할 계획이라면 사전 내용을 변수로 선언하십시오.var
빈 사전을 상수로 선언할 수 있습니다.let
그러나 초기화 후에는 상수 값을 변경할 수 없기 때문에 변경할 의도가 있다면 의미가 없습니다.
사용할 수 없습니다.[:]
유형 정보를 사용할 수 없는 경우.
이 경우 명시적으로 지정해야 합니다.
var dict = Dictionary<String, String>()
var
가변성이므로 엔트리를 추가할 수 있습니다.반대로, 만약 당신이 그것을let
더 이상 수정할 수 없습니다(let
상수를 의미합니다).
를 사용할 수 있습니다.[:]
예를 들어, 유형 정보를 유추할 수 있는 경우 단축 표기법
var dict = ["key": "value"]
// stuff
dict = [:] // ok, I'm done with it
마지막 예에서는 사전이 유형을 가지고 있는 것으로 알려져 있습니다.Dictionary<String, String>
첫줄로명시적으로 지정할 필요는 없지만 유추되었습니다.
Swift 문서에서는 빈 사전을 초기화하는 다음 방법을 권장합니다.
var emptyDict = [String: String]()
빈 사전을 초기화하는 방법이 다르기 때문에 이 질문을 처음 접했을 때 약간 혼란스러웠습니다.Swift가 유형을 추론할 수 있는 능력을 감안할 때, 실제로는 많은 방법이 있지만, 일부 방법은 다소 중복되거나 지나치게 장황합니다.
var emptyDict = [String: String]()
var emptyDict = Dictionary<String, String>()
var emptyDict: [String: String] = [:]
var emptyDict: [String: String] = [String: String]()
var emptyDict: [String: String] = Dictionary<String, String>()
var emptyDict: Dictionary = [String: String]()
var emptyDict: Dictionary = Dictionary<String, String>()
var emptyDict: Dictionary<String, String> = [:]
var emptyDict: Dictionary<String, String> = [String: String]()
var emptyDict: Dictionary<String, String> = Dictionary<String, String>()
빈 사전이 있으면 다음과 같이 키와 값의 쌍을 추가할 수 있습니다.
emptyDict["some key"] = "some value"
사전을 다시 비우려면 다음을 수행할 수 있습니다.
emptyDict = [:]
타입은 아직<String, String>
그렇게 해서 초기화가 되었기 때문입니다.
이걸 쓰면 돼.
var emptyDict = [String: String]()
다음과 같이 선언할 수 있습니다.
var emptyDict:NSMutableDictionary = [:]
당신은 사전을 활자로 만들어야 한다.
// empty dict with Ints as keys and Strings as values
var namesOfIntegers = Dictionary<Int, String>()
컴파일러가 유형을 추론할 수 있는 경우 짧은 구문을 사용할 수 있습니다.
namesOfIntegers[16] = "sixteen"
// namesOfIntegers now contains 1 key-value pair
namesOfIntegers = [:]
// namesOfIntegers is once again an empty dictionary of type Int, String
Swift에서의 사전 선언 및 초기화
문자열 사전
var stringDict: [String: String] = [String: String]()
또는
var stringDict: Dictionary<String, String> = Dictionary<String, String>()
Int 사전
var stringDict: [String: Int] = [String: Int]()
또는
var stringDict: Dictionary<String, Int> = Dictionary<String, Int>()
AnyObject 딕셔너리
var stringDict: [String: AnyObject] = [String: AnyObject]()
또는
var stringDict: Dictionary<String, AnyObject> = Dictionary<String, AnyObject>()
문자열 배열 사전
var stringDict: [String: [String]] = [String: [String]]()
또는
var stringDict: Dictionary<String, Array<String>> = Dictionary<String, Array<String>>()
문자열 사전 배열
var stringDict: [[String: String]] = [[String: String]]()
또는
var stringDict: Array<Dictionary<String, String>> = Array<Dictionary<String, String>>()
신속:
var myDictionary = Dictionary<String, AnyObject>()
나도 이거 가지고 놀고 있어.빈 사전을 선언하고 다음과 같이 키/값 쌍을 추가할 수 있는 것은 이상합니다.
var emptyDictionary = Dictionary<String, Float>()
var flexDictionary = [:]
emptyDictionary["brian"] = 4.5
flexDictionary["key"] = "value" // ERROR : cannot assign to the result of this expression
그러나 다음과 같이 "Any" 유형을 사용하여 다른 값 유형을 허용하는 사전을 만들 수 있습니다.
var emptyDictionary = Dictionary<String, Any>()
emptyDictionary["brian"] = 4.5
emptyDictionary["mike"] = "hello"
Swift에서 선언할 때 데이터 유형을 명시적으로 알려줘야 합니다. 그렇지 않으면 유형을 유추할 수 있습니다.
스위프트 3
은 키가 을 "키"로합니다.Int
및 은 " ", " 로 합니다.String
discloss.discloss.
방법 1: 이니셜라이저
let dic = Dictionary<Int, String>()
방법 2: 단축 구문
let dic = [Int:String]()
방법 3: 사전 리터럴
var dic = [1: "Sample"]
// dic has NOT to be a constant
dic.removeAll()
임의의 유형의 일반 사전을 생성하려는 경우
var dictionaryData = [AnyHashable:Any]()
스위프트 4
let dicc = NSDictionary()
//MARK: - This is empty dictionary
let dic = ["":""]
//MARK:- This is variable dic means if you want to put variable
let dic2 = ["":"", "":"", "":""]
//MARK:- Variable example
let dic3 = ["name":"Shakeel Ahmed", "imageurl":"https://abc?abc.abc/etc", "address":"Rawalpindi Pakistan"]
//MARK: - This is 2nd Variable Example dictionary
let dic4 = ["name": variablename, "city": variablecity, "zip": variablezip]
//MARK:- Dictionary String with Any Object
var dic5a = [String: String]()
//MARK:- Put values in dic
var dic5a = ["key1": "value", "key2":"value2", "key3":"value3"]
var dic5b = [String:AnyObject]()
dic5b = ["name": fullname, "imageurl": imgurl, "language": imgurl] as [String : AnyObject]
or
//MARK:- Dictionary String with Any Object
let dic5 = ["name": fullname, "imageurl": imgurl, "language": imgurl] as [String : AnyObject]
//MARK:- More Easy Way
let dic6a = NSDictionary()
let dic6b = NSMutalbeDictionary()
하려면 , 「」를 사용합니다.[:] aka the empty dictionary literal
키와 값의 양쪽 유형에서와 같이 콘텍스트를 먼저 제공해야 합니다. [:]
은 다음과 같습니다
var dict: [String: Int] = [:]
나는 주로 사용하고 있다.
var dictionary:[String:String] = [:]
dictionary.removeAll()
다음과 같이 nero로 선언할 수 있습니다.
var assoc : [String:String]
그럼 좋은 점은 이미 타이프셋이 되어 있다는 것입니다(제가 var를 사용한 것에 주목해 주세요.이것들은 변하기 쉽고 불변하다고 생각하시면 됩니다).그런 다음 나중에 채울 수 있습니다.
assoc = ["key1" : "things", "key2" : "stuff"]
다음의 코드를 사용할 수 있습니다.
var d1 = Dictionary<Int, Int>()
var d2 = [Int: Int]()
var d3: Dictionary<Int, Int> = [Int : Int]()
var d4: [Int : Int] = [:]
var dictList = 문자열:swift var arrSection 사전 문자열제목 = 빠른 배열에 대한 문자열
var parking = [Dictionary < String, Double >()]
^ [ string : double ]입력용 사전을 추가합니다.
그것은 길을 찾는데 매우 편리하다.
var dict:사전 = [:]
언급URL : https://stackoverflow.com/questions/24033393/swift-declare-an-empty-dictionary
'programing' 카테고리의 다른 글
Bash를 사용할 때 이스케이프해야 하는 문자는 무엇입니까? (0) | 2023.04.19 |
---|---|
SQL Server에서 지난달의 레코드를 가져옵니다. (0) | 2023.04.19 |
.gitignore가 일부 파일을 제외한 모든 파일을 무시하도록 합니다. (0) | 2023.04.19 |
Bash에서 파일을 효율적으로 변환하는 방법 (0) | 2023.04.19 |
Tree View 전체를 강조 표시WPF의 항목 행 (0) | 2023.04.19 |