我如何使用这个基于数组的函数来更改在另一个 class 中显示该数组总数的标签?

How can I use this function based on an array to change a label displaying a total of that array in another class?

我开发了一个 Swift 小代码来显示某人的总点赞数。所以我有一个基于 while 循环的代码,用于将喜欢的数量加起来。然后,我创建了一个函数来显示一个包含该循环结果的短语。现在,在我的视图控制器中,我想 运行 在我创建的标签上显示功能,最终在屏幕上显示所有时间喜欢的内容。但是,我似乎无法理解我应该如何 运行 标签上的显示功能并让它显示而不是我先点击按钮的结果。请记住,这是我编码的第二天,之前只有 Java 的基本语法经验。

这是第一个代码

import UIKit

class likesObject: NSObject {
// This is where I created the loop to solve for the total amount of likes
func complimentsLikeTotal() -> Void {
    let monthlyLikes = [20, 15, 13, 32, 14, 38]
    var totalLikes = 0
    var runTotal = 0

    while runTotal < monthlyLikes.count {
        totalLikes += monthlyLikes[runTotal]
        print(totalLikes)
        runTotal += 1
    }

}
/*
 This is where I created the function to return how many all time likes there are in a phrase
 I want to use this function in the viewcontroller code on the label
 */
func display() -> String {
    return "\(complimentsLikeTotal) all time likes"
}

}

这是视图控制器代码

import UIKit

class ViewController: UIViewController {
@IBOutlet weak var inputLikesLabel: UILabel!

override func viewDidLoad() {
    super.viewDidLoad()
    // Here is where I don't know what to do with display and how to link it with the label
    self.inputLikesLabel.text = display

}

}

可能正在寻找这样的东西:(请按照惯例使 class 名称以大写字母开头)

var likesObject = LikesObject()
likesObject.complimentsLikeTotal()
let display = likesObject.display()
self.inputLikesLabel.text = display

我假设 LikesObject class 也定义了一些全局变量来保存数据。

P.s。在 swift 中,没有必要显式声明 void return 值,如果您省略它,编译器将暗示 void.