有没有办法缩短if语句中的arc4random_uniform()?

时间:2015-03-10 00:05:57

标签: swift if-statement ibaction arc4random

我在使用if语句时遇到了一些麻烦。我试图弄清楚如何缩短其中arc4random_uniform的if语句。这是我的代码:

func firstCustomNumberRange(sender:AnyObject){

    if (firstCustomNumberRangeLabel == 1 )
    {
        var randomNumber = 1
    }


    if (firstCustomNumberRangeLabel == 2 )
    {
        var randomNumber = arc4random_uniform( 2) + 1
    }


    if (firstCustomNumberRangeLabel == 3 )
    {
        var randomNumber = arc4random_uniform( 3) + 1
    }


    if (firstCustomNumberRangeLabel == 4 )
    {
        var randomNumber = arc4random_uniform( 4) + 1
    }
     ...}

(我将模式重复到20)。这是一个非常耗时的过程,我花了大约30分钟来编写这些简单的if语句。

是否可以缩短if语句中包含自定义arc4random_uniform( )的语句。

提前致谢。

1 个答案:

答案 0 :(得分:1)

直接将firstCustomNumberRangeLabel的值传递给arc4random_uniform()

func firstCustomNumberRange(sender : AnyObject){
    if let numberRange = NSNumberFormatter().numberFromString(firstCustomNumberRangeLabel.text!) {
        let randomNumber = arc4random_uniform(UInt32(numberRange.unsignedIntegerValue)) + 1
    }
}