草庐IT

字典序法

全部标签

dictionary - 如何从 Swift 中的字典中获取键的值?

我有一本Swift字典。我想获得我的key的值(value)。键方法的对象对我不起作用。如何获取字典键的值?这是我的字典:varcompanies=["AAPL":"AppleInc","GOOG":"GoogleInc","AMZN":"Amazon.com,Inc","FB":"FacebookInc"]fornameincompanies.keys{print(companies.objectForKey("AAPL"))} 最佳答案 使用下标访问字典键的值。这将返回一个可选的:letapple:String?=compani

dictionary - 如何从 Swift 中的字典中获取键的值?

我有一本Swift字典。我想获得我的key的值(value)。键方法的对象对我不起作用。如何获取字典键的值?这是我的字典:varcompanies=["AAPL":"AppleInc","GOOG":"GoogleInc","AMZN":"Amazon.com,Inc","FB":"FacebookInc"]fornameincompanies.keys{print(companies.objectForKey("AAPL"))} 最佳答案 使用下标访问字典键的值。这将返回一个可选的:letapple:String?=compani

swift - 如何使用 Swift 的 Codable 编码成字典?

我有一个实现Swift4的Codable的结构。是否有一种简单的内置方法将该结构编码到字典中?letstruct=Foo(a:1,b:2)letdict=something(struct)//nowdictis["a":1,"b":2] 最佳答案 如果您不介意稍微移动一下数据,您可以使用这样的方法:extensionEncodable{funcasDictionary()throws->[String:Any]{letdata=tryJSONEncoder().encode(self)guardletdictionary=tryJS

swift - 如何使用 Swift 的 Codable 编码成字典?

我有一个实现Swift4的Codable的结构。是否有一种简单的内置方法将该结构编码到字典中?letstruct=Foo(a:1,b:2)letdict=something(struct)//nowdictis["a":1,"b":2] 最佳答案 如果您不介意稍微移动一下数据,您可以使用这样的方法:extensionEncodable{funcasDictionary()throws->[String:Any]{letdata=tryJSONEncoder().encode(self)guardletdictionary=tryJS

ios - 如何从 Swift 中的字典中获取特定索引处的键?

我在Swift中有一个Dictionary,我想在特定索引处获取一个键。varmyDict:Dictionary=Dictionary()我知道我可以遍历键并记录它们forkeyinmyDict.keys{NSLog("key=\(key)")}然而,奇怪的是,这样的事情是不可能的varkey:String=myDict.keys[0]为什么? 最佳答案 那是因为keys返回LazyMapCollection,不能用Int作为下标.处理此问题的一种方法是推进字典的startIndex。通过您想要下标的整数,例如:letintInde

ios - 如何从 Swift 中的字典中获取特定索引处的键?

我在Swift中有一个Dictionary,我想在特定索引处获取一个键。varmyDict:Dictionary=Dictionary()我知道我可以遍历键并记录它们forkeyinmyDict.keys{NSLog("key=\(key)")}然而,奇怪的是,这样的事情是不可能的varkey:String=myDict.keys[0]为什么? 最佳答案 那是因为keys返回LazyMapCollection,不能用Int作为下标.处理此问题的一种方法是推进字典的startIndex。通过您想要下标的整数,例如:letintInde

ios - Swift:声明一个空字典

我开始学习swift是通过Apple提供的iBook-TheSwiftProgrammingLanguage来学习Swift的。书中说要创建一个空字典,应该使用[:]与将数组声明为[]时相同:我声明了一个空数组如下:letemptyArr=[]//orString[]()但是在声明空字典时,我得到语法错误:letemptyDict=[:]如何声明一个空字典? 最佳答案 varemptyDictionary=[String:String]()varpopulatedDictionary=["key1":"value1","key2":

ios - Swift:声明一个空字典

我开始学习swift是通过Apple提供的iBook-TheSwiftProgrammingLanguage来学习Swift的。书中说要创建一个空字典,应该使用[:]与将数组声明为[]时相同:我声明了一个空数组如下:letemptyArr=[]//orString[]()但是在声明空字典时,我得到语法错误:letemptyDict=[:]如何声明一个空字典? 最佳答案 varemptyDictionary=[String:String]()varpopulatedDictionary=["key1":"value1","key2":

dictionary - 如何将项目字典添加到另一个字典中

Swift中的数组支持+=运算符将一个数组的内容添加到另一个数组。有没有一种简单的方法可以对字典执行此操作?例如:vardict1=["a":"foo"]vardict2=["b":"bar"]varcombinedDict=...(somewayofcombiningdict1&dict2withoutlooping) 最佳答案 你可以为Dictionary定义+=运算符,例如,func+=(left:inout[K:V],right:[K:V]){for(k,v)inright{left[k]=v}}

dictionary - 如何将项目字典添加到另一个字典中

Swift中的数组支持+=运算符将一个数组的内容添加到另一个数组。有没有一种简单的方法可以对字典执行此操作?例如:vardict1=["a":"foo"]vardict2=["b":"bar"]varcombinedDict=...(somewayofcombiningdict1&dict2withoutlooping) 最佳答案 你可以为Dictionary定义+=运算符,例如,func+=(left:inout[K:V],right:[K:V]){for(k,v)inright{left[k]=v}}