gpt4 book ai didi

ios - UI图像错误: index out of range

转载 作者:行者123 更新时间:2023-11-30 12:47:56 25 4
gpt4 key购买 nike

我的代码有问题,我正在尝试制作一个简单的 war 游戏应用程序,一开始一切正常,但在单击 10-20 个按钮来随机化新卡后,我收到错误:

fatal error: Index out of range

我知道变量名称不正确,但我不是来自英国,所以我很快地输入它们,其英文单词带有波兰语语法:D,karty 意味着卡片)

import UIKit

class ViewController: UIViewController {

@IBOutlet weak var LeftCardOutlet: UIImageView!
@IBOutlet weak var RightcardOutlet: UIImageView!
@IBOutlet weak var LeftScoreOutlet: UILabel!
@IBOutlet weak var RightscoreOutlet: UILabel!

var karty = ["card2","card3","card4","card5","card6","card7","card8","card9","card10","jack","queen","king"]

var scoreplayer:Int=0
var CPUscore:Int=0
override func viewDidLoad() {
super.viewDidLoad()

}

override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()

}
@IBAction func DealClicked(_ sender: UIButton) {
var random1:Int = 0
var random2:Int = 0
random1 = Int(arc4random_uniform(UInt32(12)))
random2 = Int(arc4random_uniform(UInt32(12)))
var im1=UIImage(named:"\(karty[random1+1])")
var im2=UIImage(named: "\(karty[random2+1])")
LeftCardOutlet.image=im1
RightcardOutlet.image=im2
if random1>random2 {
scoreplayer+=1
LeftScoreOutlet.text=String(scoreplayer)
}
if random1<random2 {
CPUscore+=1
RightscoreOutlet.text=String(CPUscore)
}
}

}

我在这一行有错误:

var im2=UIImage (named: "\ (karty[random2+1])")

我是 Swift 新手,这是我第三次使用,所以请理解:)

最佳答案

在几乎所有编程语言中,随机数生成器都会返回 >= 0 且 <(严格小于)参数的数字。

因此 Int(arc4random_uniform(UInt32(12))) 返回 0 到 11(含)之间的数字。

此外,在几乎所有编程语言中,数组元素的第一个元素的索引都从 0 开始。因此,这将修复您的代码:

var im1=UIImage(named:"\(karty[random1])")
var im2=UIImage(named:"\(karty[random2])")

代码运行后,您可以访问我们的姊妹网站 Code Review要求改进。

关于ios - UI图像错误: index out of range,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41384527/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com