Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 总结核心数据与NSN数字中的布尔值_Swift_Core Data - Fatal编程技术网

Swift 总结核心数据与NSN数字中的布尔值

Swift 总结核心数据与NSN数字中的布尔值,swift,core-data,Swift,Core Data,目前,我正在构建一个统计应用程序,目前我的核心数据模型设置为,每次玩家记录统计数据时,记录1个对象nsnumber用于赢家,记录1个对象用于输家。这些对象只是数字1。然而,在重新评估我的模型后,我意识到我可以为9个选项中的每一个设置1个属性,这些选项记录一个布尔值为真或假,然后对其进行汇总。在进行更改之前,我已经发布了我当前数据模型的副本 我想看看我在这方面是否正确。如果我真的这样做了,我如何将真对象和假对象的总数相加,进行乘法,得到统计数据,我如何处理布尔对象?代码是什么样子的?我仍在学习编程

目前,我正在构建一个统计应用程序,目前我的核心数据模型设置为,每次玩家记录统计数据时,记录1个对象nsnumber用于赢家,记录1个对象用于输家。这些对象只是数字1。然而,在重新评估我的模型后,我意识到我可以为9个选项中的每一个设置1个属性,这些选项记录一个布尔值为真或假,然后对其进行汇总。在进行更改之前,我已经发布了我当前数据模型的副本

我想看看我在这方面是否正确。如果我真的这样做了,我如何将真对象和假对象的总数相加,进行乘法,得到统计数据,我如何处理布尔对象?代码是什么样子的?我仍在学习编程语言,并决定开始与这样一个使用核心数据的项目合作。。。。!!

您的模型存在严重缺陷。您实际上是在将数据硬编码到模型中。这在很多层面上都是有问题的

例如:圣骑士、牧师和盗贼应该反映为数据,而不是实体的属性名称。您应该将这些东西抽象为具有
名称
属性的实体

不太重要的是,您使用复数作为实体名称。这也可能产生误导,因为实体描述的是数据类别,而不是表格。实体名称中包含动词,如“StoreUsersDeck”,则更为古怪。这是一副牌,为什么不“一副”呢?属性和关系名称也可以使用类似的参数

我不理解您的模型,但以下是一个示例,说明您应该寻求的简化类型:

Deck
  -name
  -(categories) <<-------------------------->> Category
                                                -name
  -(cards)      <--------------------------->> Card
                                                -(category)
甲板
-名字
-(类别)类别
-名字
-(卡片)>卡片
-(类别)
最后,说到布尔值/数字:简化数据模型也会有所帮助。我假设对于每个类别,你只能有一个结果,一个赢数或一个输数

Result
  -isWin [boolean]
  -count [number]
  -(category) <<--------------> Category
结果
-伊斯温[布尔]
-计数[数字]

-(category)我有一个类实体,其中包含一个布尔值的类,它保存了一个确定原型的true/false语句。至于其他方面,我同意,我只是匆匆忙忙地做了一天的数据模型,并将在接下来的24小时内进行大量清理。因此,对于结果,我应该有两个单独的实体,其中一个包含真/假赢/输记录,然后是另一个实体,其中包含他们所面临的类?结果可以是来自甲板上的许多。我的想法是,
isWin
可以同时捕获赢家和输家。但是,如果两者都有可能,你可以改为
winCount
loseCount
。我希望能够在tableview的后记中记录胜负,准确地分解面对的比赛和最终结果,所以我想我需要两者……我没有想到要将这些类划分为自己的实体,我肯定知道这会是怎样的更清晰…我现在正在做这件事。我清理了我的核心数据模型,看看这是否更清晰易读,并用更新的图片编辑了我的第一篇文章。消除VSClass(它与Class相同),并将Class的属性减少为一个
名称
(如果需要更多,请使用多个关系,而现在只有一个关系)。此外,为了其他人的利益,您应该在问题中包括您的初始数据模型。