Swift程序:移除字典中的空值
有时字典包含空值,为了移除这些空值,Swift 提供了一个内置函数 `filter()` 方法。在 `filter()` 方法中,我们传递一个闭包,该闭包返回一个布尔值,指示键值对是否应该包含在结果字典中。或者我们可以说,如果键值对的第二个元素(值)不是 nil,则它将包含在结果字典中,否则不包含。
语法
dict.filter{$0.1 != nil}
这里,`dict` 是字典。`filter()` 函数返回满足给定闭包的键值对。如果键值对的第二个元素(值)不是 nil,则闭包返回 true;否则返回 false。
算法
步骤 1 - 创建一个包含键值对的数组。这里值的类型是可选类型,以便存储 nil。
步骤 2 - 打印原始字典。
步骤 3 - 使用 `filter()` 方法从字典中移除空值。
步骤 4 - 打印修改后的数组。
示例
在下面的 Swift 程序中,我们将从字典中移除空值。为此,我们将创建一个包含 nil 值(或可选值)的字典。然后,我们将使用 `filter()` 函数移除 nil 值及其关联的键,并显示结果。
import Foundation
import Glibc
var myCityRank:[String:Int?] = ["Delhi": nil, "Goa": 3, "Pune": nil, "Jaipur": 2, "Kolkata": nil]
print("Original values: ", myCityRank)
// Removing nil
myCityRank = myCityRank.filter{$0.1 != nil}
print("Dictionary without null values: \(myCityRank)")
输出
Original values: ["Goa": Optional(3), "Jaipur": Optional(2), "Delhi": nil, "Kolkata": nil, "Pune": nil] Dictionary without null values: ["Jaipur": Optional(2), "Goa": Optional(3)]
结论
这就是我们如何从字典中移除空值的方法。为了在字典中存储空值,我们声明值类型为可选类型,使用问号 (Int?)。如果没有可选类型,则无法在字典中存储空值。
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP