swift - 二元运算符 '+' 不能应用于类型 'Int' 和 '[Int]' 的操作数

标签 swift swift4

我正在尝试编写代码来更新我的数组并根据每日工资给出总工资。我收到有关二元运算符的错误,那么如何修复此行代码,以免发生这种情况。

for day in stride(from: 1, to: 31, by: 1)
{
    dailyPay[day] = [Int(pay)]
    pay*=2
    if(day==1)
    {
        totalPay[day] = Int(pay)
    }
    else
    {

        totalPay[day] = totalPay[day-1]+dailyPay[day]//The problem is Here

        print("\(heade) \(day) \(head) \(dailyPay[day]) \(total) \(totalPay[day])")
    }

最佳答案

您没有显示变量的声明,但看起来 totalPay 是一个 Int 数组,而 dailyPayInt 数组的二维数组。因此,totalPay[day-1] 将是一个 Int,而 dailyPay[day] 将是一个 [Int]Int 数组。因此,您得到的错误正是它所说的意思;您不能使用 + 添加 Int 和数组。

从您的代码看来,dailyPay 可能是一个普通的旧整数数组,例如 totalPay。所以你可以通过更改声明来解决这个问题,无论它在哪里,来自:

var dailyPay: [[Int]]

到:

var dailyPay: [Int]

然后,将分配更改为:

dailyPay[day] = Int(pay)

一切都应该有效。

旁注:您的 for 循环不必要地复杂。不需要 stride,只要您可以:

for day in 1...31

关于swift - 二元运算符 '+' 不能应用于类型 'Int' 和 '[Int]' 的操作数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50031638/

相关文章:

ios - Storyboard UICollectionViewCell 出现,然后变为空白

swift - 在 Swift 4 中,您能否编写仅适用于遵守多种协议(protocol)的事物的扩展?

ios - 在 Swift4 中,替换 navigationItem.leftBarButtonItem 会调整不需要的大小

swift - 以编程方式自动布局(NSLayoutConstraint): center inner view in outer view and constrain to min(width, 高度)

ios - HKSampleQuery 不返回任何结果,即使有

ios - 我们什么时候应该在 RxSwift 中调用 addDisposableTo(disposeBag)?

ios - 我无法在后台播放音乐(Xcode 9、Swift 4)

json - 如何修复 Swift 4 中的 [BoringSSL] 长度错误?

Swift 无法转换匹配泛型约束的类型的值

ios - 如何只在用相机拍摄时保存照片?