如何在 Swift 中创建二维数组?

2023-12-08

你好,我是 Swift 新手,我正在尝试将经度和纬度以及地名从地图的坐标对象保存到多维数组,即:

谁能帮我如何动态创建这些?

var pinArray[0][Lat] = 51.130231
var pinArray[0][Lon] = -0.189201
var pinArray[0][Place] = "Home"

var pinArray[1][Lat] = 52.130231
var pinArray[1][Lon] = -1.189201
var pinArray[1][Place] = "Office"

var pinArray[2][Lat] = 42.131331
var pinArray[2][Lon] = -1.119201
var pinArray[2][Place] = "Dinner"

您可以创建字典数组,但我建议使用结构体。

字典数组

创建一个空字典数组:

var pinArray = [[String:AnyObject]]()

将字典附加到数组:

pinArray.append(["lat":51.130231, "lon":-0.189201, "place":"home"])

pinArray.append(["lat":52.130231, "lon":-1.189201, "place":"office"])

但是由于您的字典保存两种类型的值(双精度型和字符串型),因此取回数据会很麻烦:

for pin in pinArray {
    if let place = pin["place"] as? String {
        print(place)
    }
    if let lat = pin["lat"] as? Double {
        print(lat)
    }
}

因此,最好使用结构体:

结构体数组

创建一个保存我们的值的结构:

struct Coordinates {
    var lat:Double
    var lon:Double
    var place:String
}

创建这些对象的空数组:

var placesArray = [Coordinates]()

将结构体的实例追加到数组中:

placesArray.append(Coordinates(lat: 51.130231, lon: -0.189201, place: "home"))

placesArray.append(Coordinates(lat: 52.130231, lon: -1.189201, place: "office"))

然后很容易获得值:

for pin in placesArray {
    print(pin.place)
    print(pin.lat)
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Swift 中创建二维数组? 的相关文章

  • Cocoa webview UserAgent“webkit-legacy”问题

    我解决了这个问题 请看下面所选的答案 我一直在努力寻找导致 OSX Cocoa 应用程序的 WebView 与 Safari 表现不同的原因 事实证明 用户代理是不同的 有点明显 并且我正在访问的网站不知道如何处理它 令人惊讶的是 它是ht
  • 是否可以强制 MapKit 显示所有注释而不进行聚类?

    我有两个类都符合MKAnnotation 我想知道有没有办法强制MapKit当用户缩小并显示所有注释时不聚集注释 上述解决方案对我不起作用 但是这个解决方案有效 final class CarPinMarkerView MKMarkerAn
  • 将 1d 数组索引转换为 3d 数组索引?

    我有一个 int 我想将其转换为 3d 数组索引的 3 个 int 这是我正在处理的示例 byte array new byte XSize YSize ZSize int i 0 other code array cur other co
  • NSMenu 未调用 validateMenuItem 或 menuWillOpen

    我的 Mac 应用程序有一个 NSMenu 其委托功能validateMenuItem and menuWillOpen从来没有被调用过 到目前为止 网上的解决方案都没有帮助 看来我做的一切都是对的 菜单项的选择器属于同一类 管理它的类继承
  • JavaScript 数组 every 和 some 之间的区别

    我看到在给定的测试中两者都返回 true 或 false https developer mozilla org en US docs Web JavaScript Reference Global Objects Array some h
  • Firebase获取孩子ID swift ios

    我的 Firebase 看起来像这样 贝娄Active Orders看来childs根据他们的不同有不同的名字UID 用户身份 这是我的代码 用于获取孩子的 ID 无论孩子的名字是什么 但它似乎根本不起作用 获得的正确方法是什么child
  • JavaScript 按属性删除对象数组中的元素

    我有一个以下形式的对象数组 prop1 value1 banks id value property2 value2 所以我想要做的是通过搜索 id 值来删除 banks 属性中的元素 然后从banks数组中删除找到的元素 id 属性具有唯
  • 如何使用 JQuery 提取嵌套 HTML 中的文本?

    我这里有 HTML 代码 div class actResult style border solid table tbody tr td Order Number td td 1 td tr tr td Customer Number t
  • 删除数组中的重复元素[重复]

    这个问题在这里已经有答案了 可能的重复 在 JavaScript 数组中查找重复值的最简单方法 https stackoverflow com questions 840781 easiest way to find duplicate v
  • 在 JavaScript 中对并行数组进行排序

    我有几个名为名称和销售的并行数组 我让用户输入最多 100 名销售人员 显然是名字 及其销售额 我将这些打印到表格上没有问题 问题 无论如何对我来说 是它们需要根据销售额按降序排序 我做了一个函数叫做sort其编码 很差 因为我刚刚开始学习
  • 如何求一个值的n次方根?

    在 Swift 中 找到一个值的 n 次根的最简单方法是什么 我们知道数字 x 的 N 次方根相当于 x 的 N 倒数次幂 知道了这一点 我们可以使用pow求 N 次方根的函数 let nthRoot pow base 1 n where
  • CGFloat 和 NSNumber 之间的转换,无需不必要地提升为 Double

    众所周知 CGFloat 在 CoreGraphics UIKit 等中普遍存在 可以是 32 位或 64 位浮点数 具体取决于 处理器架构 In C CGFloat它是一个类型别名 到float or double 在 Swift 中它被
  • 如何在 Swift Joint 中创建自定义链?

    我正在尝试创建一个LocationManager组合的包装 我有一个发布者和一些触发发布者的函数 但是 我想将它们与自定义命令组合在一起 这是我到目前为止得到的 available OSX 10 15 iOS 13 tvOS 13 watc
  • FutureWarning:使用非元组序列进行多维索引

    我收到的警告是 C Users el Anaconda3 envs Py3 lib site packages scipy io matlab miobase py 414 FutureWarning 使用非元组序列进行多维 不推荐使用索引
  • 为什么 CABasicAnimation 尝试初始化我的自定义 CALayer 的另一个实例?

    我收到此错误 致命错误 对类 MyProject AccordionLayer 使用未实现的初始化程序 init layer 使用以下代码 在我的视图控制器中 override func viewDidLoad let view self
  • 在Python中将数组的元素从科学记数法转换为十进制记数法

    我有一个 numpy 数组 其元素采用科学格式 我想将它们转换为十进制格式 我的 numpy 数组如下所示 array 93495052 96955582 98555123 06146193 array 1 00097681e 09 9 9
  • Swift 上的 USB 连接委托

    Swift 中是否有一个代表可以让我的班级知道何时通过计算机的 USB 插入新设备 我想知道我的程序何时可以使用新设备 Eric Aya 的答案已经相当不错了 但这里有一个 Swift 3 的改编 我把大部分丑陋的东西包裹在一个USBWat
  • Django Rest框架Json解析

    我想解析传入的POSTdjangoviews py 文件中的数据 发布数据 number 17386372 data banana apple grapes 这是我尝试读取上述传入数据的方法request views py class Fr
  • 如何从TableViewCell上的自定义CollectionViewCell推送VC?

    我有一个tableView和细胞 在细胞上我有一个collectionView并在其上显示一些内容 我想发送一个有关选择的链接indexPath 我想从自定义中推送 呈现我的视图CollectionViewCell这是在TableViewC
  • 根据 Swift 中的列表选择在 ViewController 之间传递值

    我试图将 listView 选择的选定索引号从一个 ViewController 传递到另一个 ViewController 但遇到了 tableView didSelectRowAtIndexPath 委托运行时间稍晚于prepareFo

随机推荐

  • 在OpenGL中绘制多个三角形

    我刚刚开始使用 OpenGL 并且已经制作了自己的用 C 绘制三角形的 OOP 版本 我正在使用 glfw 和 glew 如果这很重要的话 我不明白为什么我不能画超过 1 个三角形 这是主要功能 int main Graphics Wind
  • 打开 Bootstrap Modal 以在 Ruby on Rails 中编辑记录

    我有一个 用户 模型 我在用户索引页面上有一个用户列表 每个用户旁边都有一个编辑按钮 我想单击每个用户的编辑按钮 这将打开引导模式 在引导模式上 我想显示可以编辑的用户记录 编辑表单将来自 form html erb 部分 它将用于新的和编
  • Facebook Messenger 的自定义 URI 方案

    鉴于近期 鼓励 由 Facebook 迁移到单独的即时通讯应用程序 并作为 信息非常丰富 回答有关 Facebook 应用程序支持的 URL URI 方案的问题 我一直想知道有关 Facebook Messenger 应用程序的信息是否自定
  • 有没有办法将寄存器文件视为 ARMv8 中的数组(标量或 Neon)?

    假设我有一个短数组v说 8int64 t 我有一个算法需要访问该数组的不同元素 这些元素不是编译时常量 例如就像是v i j 2 其中i and j是不受任何类型的常量传播影响的变量 通常 我会保留内存中的数组 计算数组索引 从内存中的该位
  • 快线申报

    我有 2 条路线 例如 router get project id req res gt console log 1 router get project active req res gt console log 2 每当我调用 proj
  • 使用 xpath 选择第一个结果的子项

    我有一段 XML 其中相同的信息可以显示为不同节点的子节点 例如
  • 设置工具栏菜单项标题的样式

    我正在尝试实现菜单项设计 如下面的 YouTube 应用程序屏幕所示 我感兴趣的菜单项是操作菜单项 在这种情况下 G Currently my application Looks like the image below 我的样式和背景xm
  • Google 文档和 Google 云端硬盘中的 Google Apps MIME 类型是什么?

    以下每个文件扩展名的 MIME 类型是什么 gdoc gslide gsheet gdraw 谷歌文档 application vnd google apps document application vnd google apps kix
  • 在 JavaScript 类函数中使用 setTimeout()

    是否可以在 JavaScript 对象中使用 setTimeout 目前动画方法调用运行一次 似乎 setTimeout 没有完成其工作 我已经设法让它工作 但是采用了一种非常黑客的方法 在使用 setTimeout 的类之 外有一个函数
  • Javascript 相当于 Java SHA1PRNG

    我有一个使用 AES 128位 ECB PKCS5Padding java8 linux window 的Java应用程序 代码非常简单 KeyGenerator keygen KeyGenerator getInstance AES Se
  • 尝试添加深层链接我的 Android 应用程序

    我的应用程序工作正常 但每当我在清单中添加深层链接代码时 我的应用程序午餐图标就会消失 这是我的清单文件
  • 禁用/删除 Kendo Grid 默认组列上的关闭图标

    我正在使用 Kendo UI Grid 作为我的解决方案之一 我有一个任务 要求 我应该能够为网格提供默认分组 并且用户不应该能够从 UI 中删除此分组 有一种方法可以实现此目的 如 jsFiddle 示例所示 http jsfiddle
  • 美国网站的信用卡收单和贝宝解决方案

    我计划建立一个仅在美国接受收费的网站 是否有任何信用卡收单软件可以轻松地由 C ASP NET 网站实现 有人可以推荐一些吗 在数据库中保存 加密信用卡数据有什么规则吗 任何帮助都会很棒 正如 Albireo 所指出的 您不想将信用卡存储在
  • 如何给 dplyr 一个 SQL 查询并让它返回一个远程 tbl 对象?

    假设我有一个使用 dbplyr 打开的远程 tbl 并且我想对其使用 SQL 查询 可能是因为没有 dbplyr 翻译来实现我想要做的事情 我该如何给它返回一个远程 tbl 对象 The DBI dbGetQuery 函数允许您向 db 发
  • Java:JRadioButton 上的 ActionEvent 和 ItemEvent 有什么区别?

    释放鼠标按钮后 它们都会升起一次 并且都可以获取 JRadioButton 上的所有可用信息 对吧 有什么区别吗 An ItemListener当按钮的状态发生变化时 无论是通过用户与按钮交互还是以编程方式 通过setSelected方法
  • 从 Ubuntu 中完全卸载 PHP [关闭]

    Closed 这个问题是无关 目前不接受答案 有人可以告诉我如何从 Ubuntu 中完全卸载 PHP 吗 因此 我在安装 MySql 时遇到问题 似乎存在一些未满足的依赖关系 我想我搞砸了整个安装过程 有人可以帮我解决这个问题吗 这不是一个
  • ExifInterface 和 VM 中止发生奇怪的致命崩溃

    我在使用 ExifInterface 时遇到了奇怪的致命崩溃 导致崩溃的行是这样的 非常简单 Foto java 341 ExifInterface exif new ExifInterface filename 我只看到一些图片就崩溃了
  • 用户友好的 URL 而不是查询字符串? [复制]

    这个问题在这里已经有答案了 可能的重复 在 php 中使用 seo 用户友好 codeigniter 中的自定义路由 我正在开发一个 CMS 我想使用用户友好的 URL 而不是查询字符串 e g mysite com cat 1 gt my
  • 多个模型之间的多对多字段关系

    我有以下代表书籍和作者的模型 一本书可以有多个作者 一个作者可以写多本书 所以我使用 Django 的ManyToManyField键入以将两个模型相互链接 我可以添加一个Book 也许使用 Django Admin 并创建一个Author
  • 如何在 Swift 中创建二维数组?

    你好 我是 Swift 新手 我正在尝试将经度和纬度以及地名从地图的坐标对象保存到多维数组 即 谁能帮我如何动态创建这些 var pinArray 0 Lat 51 130231 var pinArray 0 Lon 0 189201 va