Я любительский программист на Python, пытаясь использовать новый язык программирования Swift от Apple. Недавно я решил переписать сценарий Python, который у меня есть в Swift, как первый шаг к его созданию в приложении 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
}
}
* Это Swift функция выше unfininshed но вы можете видеть, где я идя с ним.
Так что, пытаясь переписать эту функцию, я получаю один из двух эорр. Либо, как она стоит сейчас, я получаю:
Ссылка на общий тип «массив» требует аргументов в < ...>
Или, если я использую тип возвращаемого Int вместо:
'[Int] не конвертируется в «Int»
Я знаю, что случайная функция Я с использованием в Swift является имеет некоторые осложнения что Pythons randint не делает, но до сих пор мне не удалось найти конкретную проблему. Является ли мой метод случайного целого числа по ошибке или я неправильно возвращаю список? У кого-нибудь с опытом Swift есть идея? Ответы в Obj-C также могут быть полезны. Благодаря!
'Array' должен работать –
heinst