2 kmkm3333 kmkm3333 于 2016.02.14 22:26 提问

Swift 2.0泛型例子解答

func anyCommonElements (lhs: T, _ rhs: U) -> Bool {
for lhsItem in lhs {
for rhsItem in rhs {
if lhsItem == rhsItem {
return true
}
}
}
return false
}
anyCommonElements([1, 2, 3], [3])

练习: 修改anyCommonElements(_:_:)函数来创建一个函数,返回一个数组,内容是两个序列的共有元素。

1个回答

caozhy
caozhy   Ds   Rxr 2016.02.15 05:55
 func anyCommonElements  (lhs: T, rhs: U) -> Bool { 
    for lhsItem in lhs { 
        for rhsItem in rhs { 
            if lhsItem == rhsItem { 
                return true 
            } 
        } 
    } 

    return false 
} 

anyCommonElements([1, 2, 3], [3]) 

func whichCommonElements  (lhs: T, rhs: U) -> Array { 
    var toReturn = Array() 

    for lhsItem in lhs { 
        for rhsItem in rhs { 
            if lhsItem == rhsItem { 
                toReturn.append(lhsItem) 
            } 
        } 
    } 

    return toReturn 
} 

whichCommonElements([1, 2, 3], [3, 2]) 
kmkm3333
kmkm3333 错了,开头是func anyCommonElements <T, U where T: SequenceType, U: SequenceType, T.Generator.Element: Equatable, T.Generator.Element == U.Generator.Element> (lhs: T, _ rhs: U) -> Bool {
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
iOS学习笔记47-Swift(七)泛型
一、Swift泛型介绍泛型是为Swift编程灵活性的一种语法,在函数、枚举、结构体、类中都得到充分的应用,它的引入可以起到占位符的作用,当类型暂时不确定的,只有等到调用函数时才能确定具体类型的时候可以引入泛型。 我们之前实际上已经使用过泛型,例如:Swift的Array和Dictionary类型都是泛型集。 你可以创建一个Int数组,也可创建一个String数组,或者甚至于可以是任何其他Swi
Swift3.0 泛型<T>
泛型能够让开发者编写自定义需求已经任意类型的灵活可用的的函数和类型。能够让我们避免重复的代码。用一种清晰和抽象的方式来表达代码的意图。 1.泛型解决的问题 下面是一个非泛型的例子 func swapTwoIntValue(inout a:Int,inout b:Int){ //使用inout关键字可以修改传入的数值的原始值。 let tempValue = a
Swift泛型和泛型函数
泛型(generic)可以使我们在程序代码中定义一些可变的部分,在运行的时候指定。使用泛型可以最大限度地重用代码、保护类型的安全以及提高性能。在Swift集合类中,已经采用了泛型。一、一个问题的思考怎样定义一个函数来判断两个参数是否相等呢?如果参数是Int类型,则函数定义如下:func isEqualsInt(a:Int, b:Int) -> Bool {    return (a == b)}这
Swift-泛型学习和实例总结
泛型允许程序员在强类型程序设计语言中编写代码时使用一些以后才指定的类型,在实例化时作为参数指明这些类型 使用泛型代码,可以写出可重用的函数和数据结构,只要它们满足你所定义的约束,它们就能够适用于各种类型
iOS --- Swift中泛型(Generic)的基本使用
泛型(Generic)是Swift新引入的强大特征,可以写出根据自我需求定义、适用于任何类型的,灵活且可重用的函数和类型。可以避免重复的代码,用一种清晰和抽象的方式来表达代码的意图。
Swift 泛型函数 类型约束(十三)
非泛型函数/// 交换两个整形的值 func swapTwoNumbersInt(inout a: Int, inout _ b:Int) { let temp = a a = b b = temp }/// 交换两个字符串的值 func swapTwoString(inout string1: String, inou
Swift3.0中文教程:23.泛型
泛型代码让你能够根据自定义的需求,编写出适用于任意类型、灵活可重用的函数及类型。它能让你避免代码的重复,用一种清晰和抽象的方式来表达代码的意图。 泛型是 Swift 最强大的特性之一,许多 Swift 标准库是通过泛型代码构建的。事实上,泛型的使用贯穿了整本语言手册,只是你可能没有发现而已。例如,Swift 的 Array 和 Dictionary 都是泛型集合。你可以创建一个 Int 数组,也
Swift泛型在协议中的使用
protocol TestProtocol { associatedtype TestElement func run(_ param: TestElement) } class TestObject: TestProtocol { typealias TestElement = Int func run(_ param: Int) {
(作业)Swift闭包、扩展、泛型
在Swift中经常会使用到一些基本的函数,通过使用这些函数也可以学习到Swift中的一些语法,如:闭包、扩展和泛型。接下来,我们就通过一个作业来了解一下。作业要求如下: /// question: 1 let dic = [["name": "zhangsan", "age": 18], ["name": "lisi", "age": 19], ["name": "wangwu", "age":
Swift开发中的Any和AnyObject 以及泛型的区别
摘要:我们都知道泛型、Any和AnyObject都是用于表示类型的随意性,甚至还有OC中的id类型,但是它们具体有什么不同呢?我们就来具体了解一下Any和AnyObject概括来说AnyObject用于任何类(class)的实例,而Any可以用于表示任何变量,包括各种基本类型、值类型以及实例。而在swift中,枚举类型和结构体(例如Array和Dictionary)都属于值类型,因而不能用AnyO...