问题内容: 我对Swift和编程逻辑很陌生,所以请耐心等待 如何在Swift中生成0到9之间的随机数而不重复最后生成的数字?因为相同的数字不会连续出现两次。 问题答案: 将先前生成的数字存储在变量中,然后将生成的数字与先前的数字进行比较。如果它们匹配,则生成一个新的随机数。重复生成新数字,直到它们不匹配为止。
问题内容: 在Swift中,有人可以解释如何用原始属性的子类覆盖另一个超类的属性吗? 举一个简单的例子: 这给出了错误: 如果我将机箱设为“ var”,则会收到错误消息: 在指南中“覆盖属性”下唯一可以找到的内容表明,我们必须覆盖getter和setter,这可能会更改属性的值(如果它是’var’),但是如何更改属性类呢? ? 问题答案: Swift不允许您更改任何变量或属性的类类型。相反,您可以
问题内容: 在 创建具有默认值的数组时,* 我注意到了一些怪异( 和危险的恕我直言 )行为。如Swift 2.1中所述:集合类型 * Swift的Array类型还提供了一个初始化程序,用于创建一个特定大小的数组,并将其所有值设置为相同的默认值。您向此初始值设定项传递要添加到新数组中的项目数(称为count)和适当类型的默认值(称为repeatedValue): 关键是: 相同的默认值 ;为了了解它
问题内容: 我是Swift的新手,当我遇到转义的闭包时,我正在阅读手册。我根本没有得到手册的描述。有人可以简单地向我解释一下Swift中的转义闭包是什么。 问题答案: 考虑此类: 将传入的闭包分配给类中的属性。 现在是另一个类: 如果我调用,则闭包将存储在的实例中。由于是在闭包中捕获的,因此的实例还将对其具有很强的引用性。 基本上,这是逃脱的闭包的例子! 您可能想知道,“什么?那么封闭从何处逃脱到
问题内容: 在Swift 2中是否有任何 内置 方法来创建有序地图?数组按对象附加到其的顺序排序,但字典不排序。 例如 是否有任何内置方法来创建有序映射,该有序映射的排序方式与数组相同,还是我必须创建自己的类? 我想尽可能避免创建自己的类,因为Swift所包含的任何内容都将更有效率。 问题答案: 您可以通过输入具有类型的键来对其进行排序。 要么 我推荐第一种,因为它是一种更常见的格式(例如JSON
问题内容: 刚刚下载了Xcode 7 Beta,此错误出现在关键字上。 谁能帮我克服这个困难? 另外,似乎无法再计算的长度。 在上面的行中,编译器说: “计数”不可用:访问集合中的“计数”属性。 Apple是否已发布任何Swift 2.0编程指南? 问题答案: 许多全局函数已被 协议扩展方法 取代,这是Swift 2的新功能,因此现在是以下扩展方法: 并用作 并且不再符合,您必须使用属性来获取Un
问题内容: 我在使代码块在Swift上无法工作时遇到麻烦。这是一个有效的示例(没有完成框): 或没有尾随闭包: 但是一旦我尝试添加完成代码块,它将无法正常工作: 自动完成功能给了我但不确定如何使它起作用。还尝试了结尾闭包,但出现了相同的错误: Swift 3/4的更新: 我不使用结尾封闭符作为完成块,因为我认为它不够清晰,但是如果您喜欢它,那么可以在下面看到Trevor的答案 问题答案: anim
问题内容: 如何将一个4字节的数组转换为相应的Int? 例: 输入: 输出: 我在互联网上发现的某些代码不起作用: 问题答案: 有两个问题: 在64位平台上是64位整数,您的输入数据只有32位。 在所有当前的Swift平台上使用小尾数表示法,您输入的是大尾数。 话虽如此,以下方法会起作用: 或在Swift 3中使用: 使用一些缓冲区指针魔术,您可以避免中间复制到对象(Swift 2): 有关此方法
问题内容: 有没有人能够找到一种在Swift 3中解析JSON文件的方法?我已经能够获得返回的数据,但是在将数据分解为特定字段方面我没有成功。我会发布示例代码,但是我经历了很多不同的方法,但是都没有成功。我想解析的基本格式是这样的。提前致谢。 问题答案: 你试过了吗? Swift有时会产生一些非常奇怪的语法。 JSON对象层次结构中的所有内容最终都被包装为可选(即)。下标返回一个非可选的。对于此J
问题内容: 我在将Byte数组快速转换为字符串时遇到问题。我搜索并找到一个简单的解决方案 但是显示错误没有成员。谁能建议我解决方案? 这是我要获取的代码,并将其转换为字节数组,然后我必须将该字节数组转换为字符串。 问题答案: Swift 3 / Xcode 8 更新 : 来自的字符串: 来自的字符串: Swift 2 / Xcode 7 更新 : 来自的字符串: 来自的字符串: 先前的答案: 没有
问题内容: 在你可以存储,,但它是从不同的。它们存在的原因是什么,如何使用它们? 问题答案: 根据Swift文档 整数 在大多数情况下,您无需选择特定大小的整数即可在代码中使用。Swift提供了另一个整数类型Int,其大小与当前平台的本机字大小相同: 在32位平台上,Int与Int32的大小相同。 在64位平台上,Int与Int64相同。 除非您需要使用特定大小的整数,否则在代码中始终将Int用作
问题内容: 我当前正在使用以下(笨拙的)代码段来确定(非空的)Swift字典是否包含给定键,并从同一字典中获取一个(任何)值。 如何将其更优雅地放在Swift中? 问题答案: 您不需要 任何 特殊的代码即可执行此操作,因为这已是字典的功能。提取时,您 知道 字典是否包含键,因为返回的Optional不包含(并且包含值)。 因此,如果您 只想 回答字典是否包含密钥的问题,请询问: 如果您需要该值并且
问题内容: 快速找到整数数组总和的最简单(最佳)方法是什么?我有一个称为倍数的数组,我想知道倍数的总和。 问题答案: 这是我能找到的最简单/最短的方法。 Swift 3和Swift 4: 斯威夫特2: 更多信息: 这使用了Array的reduce方法(在此处提供文档),该方法允许您“通过递归应用所提供的闭包将元素的集合减少到单个值”。我们给它0作为初始值,然后本质上给闭包赋值。当然,我们可以将其简
问题内容: 在Swift中,查看字符串是否与模式匹配的简单方法是什么? 伪代码示例: (我已阅读斯威夫特文档并没有看到一个正则表达式的能力。我读过有关增加一个新的运营商是一个好主意,但不是我想,因为这是一个教学项目。我已经尝试了更复杂的,但收到错误:“字符串”没有成员“ rangeOfString”。我正在寻找一种Swift解决方案,即未键入NSRegularExpression。我不需要对匹配结
问题内容: 我已经看到了一些这样的示例,但是所有这些似乎都依赖于知道要计算发生次数的元素。我的数组是动态生成的,所以我无法知道要计算哪个元素的出现(我想计算所有元素的出现)。有人可以建议吗? 提前致谢 编辑: 也许我应该更清楚一点,数组将包含多个不同的字符串(例如 在不知道它们是什么的情况下,如何计算foo,bar和foobar的出现? 问题答案: Swift 3和Swift 2: 您可以使用类型