在迅速实现功能 [英] Implementing functions in swift

查看:132
本文介绍了在迅速实现功能的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是新来的迅速,并试图实现一个简单的函数,它的最小和最大数量作为输入,并返回在极限的所有数字的数组。我收到一个错误
//错误:引用泛型类型数组要求上述&lt参数; ...>
我可以知道我失踪?

  FUNC serialNumberLimits(minimumNumber N1:智力,maximumNumber N2的:int) -  GT;数组{//初始化一个空数组
VAR阵列= INT []()//初始化的温度变量
VAR温度:= 0
在n1..n2指数{    温度+ = N1
    N1 +    如果index == 1 {array.insert(温度,atIndex:0)}    其他{array.insert(温度,atIndex:指数-1)}}返回的数组}


解决方案

使用下面的函数结果
1)当你正在使用 N1 在功能和改变其值,以便将其声明为 VAR 为所有的参数都是常量在迅速默认

2)使用阵列<诠释> 因为它需要确定哪些类型的数组是swift.Swift是强类型语言,所以所有类型需要加以界定。

以下code将没有错误编译运行

  FUNC serialNumberLimits(VAR minimumNumber N1:智力,maximumNumber N2的:int) -  GT;阵列<&诠释GT; {    //初始化一个空数组
    VAR阵列= INT []()    //初始化的温度变量
    VAR温度:= 0
    在n1..n2指数{        温度+ = N1
        N1 +        如果index == 1 {array.insert(温度,atIndex:0)}        其他{array.insert(温度,atIndex:指数)}    }    返回的数组}

I am new to swift and trying to implement a simple function that takes minimum and max number as input and returns an array with all the numbers in the limit. I am getting an error //Error: Reference to generic type 'Array' requires arguments in <...> may I know what I am missing on?

func serialNumberLimits(minimumNumber n1:Int, maximumNumber n2:Int) -> Array {

// Initialized an empty array
var array = Int[]()

//Initialized a "Temp" variable
var temp:Int = 0


for index in n1..n2 {

    temp += n1
    n1++

    if index == 1 { array.insert(temp, atIndex: 0) }

    else { array.insert(temp, atIndex: index-1) }

}

return array

}

解决方案

Use following function
1)As you are using n1 in function and changing its value so declare it as var as all parameters are constants in swift by default

2)Use Array<Int> as it needs to be define which type of array is in swift.Swift is strongly typed language so all type need to be defined.

Run following code it will compile with no errors

func serialNumberLimits(var minimumNumber n1:Int, maximumNumber n2:Int) -> Array<Int> {

    // Initialized an empty array
    var array = Int[]()

    //Initialized a "Temp" variable
    var temp:Int = 0


    for index in n1..n2 {

        temp += n1
        n1++

        if index == 1 { array.insert(temp, atIndex: 0) }

        else { array.insert(temp, atIndex: index) }

    }

    return array

}

这篇关于在迅速实现功能的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆