我是一位業餘的Python程序員,試圖用我的手掌握Apple的新Swift編程語言。我最近決定重寫一個我在Swift中使用的Python腳本,作爲將它構建到iOS應用程序中的第一步。我遇到了一些我迄今無法解決的挑戰。在Python我有一個返回隨機整數列表的功能:在Swift中返回整數列表
# Roll the Attackers dice in Python
def attacker_rolls(attack_dice):
attacker_roll_result = []
if attack_dice >= 3:
attacker_roll_result += [randint(1,6), randint(1,6), randint(1,6)]
elif attack_dice == 2:
attacker_roll_result += [randint(1,6), randint(1,6)]
elif attack_dice == 1:
attacker_roll_result = [randint(1,6)]
attacker_roll_result.sort(reverse=True)
print "The attacker rolled: " + str(attacker_roll_result)
return attacker_roll_result
我在斯威夫特什麼迄今:
// Roll the attackers dice in Swift
func attackerRolls(attackDice: Int) -> Array {
if attackDice >= 3 {
var attackerRollResult = [Int(arc4random_uniform(6)+1), Int(arc4random_uniform(6)+1), Int(arc4random_uniform(6)+1)]
return attackerRollResult
}
}
*高於雨燕功能unfininshed但你可以看到我的所在地一起去吧。
所以當試圖重寫這個函數時,我得到了兩個erorrs中的一個。不是,因爲目前的情況是,我得到:
引用泛型類型「數組」要求論點< ...>
或者,如果我使用INT返回類型改爲:
「[INT]」是無法轉換爲「廉政」
我知道我在斯威夫特利用隨機函數是有一定的併發症蟒蛇randint不,但到目前爲止,我一直無法追查具體問題。 是我的一個隨機整數錯誤的方法,還是我錯誤地返回列表? 任何有一些斯威夫特經驗的人都有想法嗎?在Obj-C中的答案也可能有所幫助。謝謝!
'Array'應該可以工作 –
heinst