嘿我正在尝试分类或基本上手动列出统计数据,我可以给出程序条件以找到我正在寻找的确切内容,如果我正在寻找在前0中得分的目标数量到了巴塞罗那在特定的一天我可以参加比赛的45场比赛(上半场)。在代码中说找到我在这个日期玩的所有游戏,并且在前0到45分钟内有两个或更多目标得分。因为我不确定我是否做得对,但我试图给字符串一个数字/ Int值来表示目标在游戏中得分的分钟。我也对游戏的日期做了同样的事情。但问题是有一个错误(不要介意拼写错误大声笑“巴塞罗那”)
let BarcelonavsRealMadrid1 = [Goals, Penaltys]
实例成员目标不能用于“ViewController”类型
如果有更好的方法,请你可以重写我的代码。感谢
代码:
import UIKit
class ViewController: UIViewController {
let Games = [BarcelonavsRealMadrid1: 1/13/14]
let SpainPrimeraDivision = [RealMadrid, Bareclonia]
let RealMadrid = [BarcelonavsRealMadrid1: 1/12/14]
let Bareclonia = [BarcelonavsRealMadrid1: 1/12/14]
let BarcelonavsRealMadrid1 = [Goals, Penaltys]
let Goals : [String : Int] = ["BarcelonaGoal":21,"RealMadridGoal":23]
let Penaltys : [String : Int] = ["RealMadridPenalty":21,"BarcelonaPenalty":23]
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
答案 0 :(得分:2)
您无法在另一个实例变量的默认分配中引用它。以下是您的问题的简化版本:
class ViewController: UIViewController {
let foo = 12
let bar = foo
}
通常你必须在init
方法中设置变量。但是,由于此处有UIViewController
,您必须在viewDidLoad
中执行此操作。因此,你必须写
class ViewController: UIViewController {
var foo : Int!
var bar : Int!
override func viewDidLoad() {
super.viewDidLoad()
foo = 12
bar = foo
}
}
您的代码存在少个问题,但是:
1/12/14
应该是什么?我保证你不是约会你需要做什么:
var
,并在viewDidLoad
答案 1 :(得分:1)
您的问题是您在初始化期间在类属性之间进行引用 - 这是不允许的。解决这个问题的一种方法是先设置一些内容,然后在viewDidLoad或viewWillAppear中设置依赖项,如下所示:
//-------All Games Ever played------------------------------------
var BarcelonavsRealMadrid1 = [[String : Int]]() // if you want this globally
let Goals : [String : Int] = ["BarcelonaGoal":21,"RealMadridGoal":23]
let Penaltys : [String : Int] = ["RealMadridPenalty":21,"BarcelonaPenalty":23]
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
BarcelonavsRealMadrid1 = [Goals, Penaltys]
}
@ luk2302在他的回答中提出的问题也很少
答案 2 :(得分:1)
试试这个
var BarcelonavsRealMadrid1:[[String:Int]] { return [Goals, Penaltys] }