数组 – 新的Swift数组语法和通用函数

数组 – 新的Swift数组语法和通用函数,第1张

概述从 Xcode beta 3开始,我们可以将[int]写成Array< Int>的简写. 所以我们应该这样写: func commonElements <T, U where T: Sequence, U: Sequence, T.GeneratorType.Element: Equatable, T.GeneratorType.Element == U.GeneratorType 从 Xcode beta 3开始,我们可以将[int]写成Array< Int>的简写.

所以我们应该这样写:

func commonElements <T,U where T: Sequence,U: Sequence,T.GeneratorType.Element: Equatable,T.GeneratorType.Element == U.GeneratorType.Element>    (lhs: T,rhs: U) -> [T.GeneratorType.Element] {        var result = [T.GeneratorType.Element]()        for lhsItem in lhs {            for rhsItem in rhs {                if lhsItem == rhsItem {                    result += rhsItem                }            }        }        return result}commonElements([1,2,3,4],[2,4,6])

由于我不理解的原因,Xcode不接受短语法来初始化结果数组但接受其长等效数组< T.GeneratorType.Element>().

我错过了什么吗?

也许编译器感到困惑.这虽然有效
var result: [T.GeneratorType.Element] = []

并且更具可读性IMO.

总结

以上是内存溢出为你收集整理的数组 – 新的Swift数组语法和通用函数全部内容,希望文章能够帮你解决数组 – 新的Swift数组语法和通用函数所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1089233.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-27
下一篇2022-05-27

发表评论

登录后才能评论

评论列表(0条)

    保存