如何让函数接受所有类型的数组

杰克

我是Swift的新手,我想知道如何让一个函数接受包含各种变量类型的数组。我希望函数只接受不带特定类型的“数组”,但会引发错误。这是我的代码:

func length(arry arry: Array)
{

}

我知道我必须在数组后放置一个<>,但是我需要该函数普遍接受所有数组。

编辑:每当我添加扩展名,我都会得到这些荒谬的错误。我的代码是:

//: Playground - noun: a place where people can play

import UIKit
extension Array {
var length: Int {
    return self.count
}
}
var arrY = ["Hello", 0]

for(var i = 0; i < length(arry: arrY); i++)
{
print(arrY[i]);
}

arrY.append(28);
var h = arrY.removeAtIndex(0);
print(h);

我收到以下错误消息:1第10行扩展名可能不包含存储的属性2第11行预期的声明3第18行预期的声明谢谢,

杰克

母亲

如果需要,可以编写一个通用函数:

func length<T>(arry arry: Array<T>)
{

}

在Swift中,Apple引入了这一概念Generics,您现在也可以在Xcode 7和Objective-C上找到它。此功能使您可以定义数组或所使用的集合类中每个元素的类型。您可以定义一个通用类或一个通用方法,如给定的示例。此功能使您能够以一种可以在不同类型上安全地工作的方式编写代码,同时利用类型安全的优势。例如,在我给出的示例中,这length是一个通用方法,该方法将类型TArray的输入作为输入。编写这样的方法,可以使您编写一个能够接受不同类型数组的方法。例如,下面的示例代码显示,您可以对Int和的数组使用相同的方法Double

var arr = [13, 23, 32]
var arr2 = [12.3, 23.5, 13.14, 2.75]
var arr3 = ["foo", "boo"]
length(arr)
length(arr)
length(arr)

有关泛型的更多信息,您可以在此链接中查看在线文档,和/或观看WWDC 2014的Swift入门视频,和/或阅读The Swift Programming Language的通用部分。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使构造函数接受所有类型的迭代器?

来自分类Dev

如何创建一个接受所有类型的变量(标量,哈希,数组或引用)的子例程

来自分类Dev

接受所有类型作为函数中的参数

来自分类Dev

在接受数字或数组作为args的函数内部,无论类型如何,如何有效地对这些args进行操作?

来自分类Dev

如何定义一个函数来接受所有扩展通用基本类型的类型(Scala,下面的特定代码)?

来自分类Dev

AFNetworking接受所有内容类型

来自分类Dev

接受所有已注册类型/实例列表的Structuremap 3构造函数

来自分类Dev

表示函数,该函数接受对象数组并返回带有所有键的并集的单个对象

来自分类Dev

如何声明一个接受类型化数组参数的函数

来自分类Dev

如何扩展接受数组通用元素的类型?

来自分类Dev

如何接受类类型的数组作为参数

来自分类Dev

如何扩展接受数组通用元素的类型?

来自分类Dev

如何配置app.json以接受所有连接类型,例如HTTP请求?

来自分类Dev

我如何接受HTML中危险的文件扩展名以外的所有文件类型

来自分类Dev

如何在Accept标头中指定我可以接受所有媒体类型?

来自分类Dev

如何创建通用函数以解组所有类型?

来自分类Dev

mongodb如何检索字段类型数组中的所有值?

来自分类Dev

如何设计一个接受所有域但依赖于某些状态的局部函数?

来自分类Dev

如何使C ++函数返回char数组所有排列的向量

来自分类Dev

如何接受所有SSH请求?

来自分类Dev

如何接受网站的所有警报?

来自分类Dev

Julia:接受多种数组类型的模板函数

来自分类Dev

如何让一个函数接受相同类型的函数?

来自分类Dev

使用Mutagen处理所有可接受的文件类型

来自分类Dev

闪亮的文件输入接受所有文件类型

来自分类Dev

接受继承类型的函数的类型

来自分类Dev

我可以获取数组中所有函数的返回类型吗?

来自分类Dev

在类型'System.Collections.Generic.List`1 [Portal.Models.FileDataModel]'中找到了多个接受所有给定参数类型的构造函数

来自分类Dev

如何遍历具有相同类型的记录类型中的所有元素(记录类型的纯函数迭代器)

Related 相关文章

  1. 1

    如何使构造函数接受所有类型的迭代器?

  2. 2

    如何创建一个接受所有类型的变量(标量,哈希,数组或引用)的子例程

  3. 3

    接受所有类型作为函数中的参数

  4. 4

    在接受数字或数组作为args的函数内部,无论类型如何,如何有效地对这些args进行操作?

  5. 5

    如何定义一个函数来接受所有扩展通用基本类型的类型(Scala,下面的特定代码)?

  6. 6

    AFNetworking接受所有内容类型

  7. 7

    接受所有已注册类型/实例列表的Structuremap 3构造函数

  8. 8

    表示函数,该函数接受对象数组并返回带有所有键的并集的单个对象

  9. 9

    如何声明一个接受类型化数组参数的函数

  10. 10

    如何扩展接受数组通用元素的类型?

  11. 11

    如何接受类类型的数组作为参数

  12. 12

    如何扩展接受数组通用元素的类型?

  13. 13

    如何配置app.json以接受所有连接类型,例如HTTP请求?

  14. 14

    我如何接受HTML中危险的文件扩展名以外的所有文件类型

  15. 15

    如何在Accept标头中指定我可以接受所有媒体类型?

  16. 16

    如何创建通用函数以解组所有类型?

  17. 17

    mongodb如何检索字段类型数组中的所有值?

  18. 18

    如何设计一个接受所有域但依赖于某些状态的局部函数?

  19. 19

    如何使C ++函数返回char数组所有排列的向量

  20. 20

    如何接受所有SSH请求?

  21. 21

    如何接受网站的所有警报?

  22. 22

    Julia:接受多种数组类型的模板函数

  23. 23

    如何让一个函数接受相同类型的函数?

  24. 24

    使用Mutagen处理所有可接受的文件类型

  25. 25

    闪亮的文件输入接受所有文件类型

  26. 26

    接受继承类型的函数的类型

  27. 27

    我可以获取数组中所有函数的返回类型吗?

  28. 28

    在类型'System.Collections.Generic.List`1 [Portal.Models.FileDataModel]'中找到了多个接受所有给定参数类型的构造函数

  29. 29

    如何遍历具有相同类型的记录类型中的所有元素(记录类型的纯函数迭代器)

热门标签

归档