gpt4 book ai didi

arrays - 如何存储大型结构数组 - Swift

转载 作者:行者123 更新时间:2023-11-30 10:14:38 25 4
gpt4 key购买 nike

我正在创建一个测验应用程序,它有 2 种模式(我们称它们为 A 和 B)。每种模式从具有超过 250 个值的结构数组中随机抽取 50 个随机问题。需要澄清的是,模式 A 和模式 B 都有单独的题库,包含超过 250 个问题,因此总共约有 500 个问题。

如何最好地存储这些结构数组,以便在用户选择所需的测试时将它们拉入我的 View Controller 。

下面是某个模式的题库示例。

// Question models

class QuizQuestion {

let question: String!
let answer: Bool!
let explanation: String!
var usersAnswer: Bool?
var answerSubmitted: Bool?

init(question: String, answer: Bool, explanation: String) {
self.question = question
self.answer = answer
self.explanation = explanation
}
}

var questions = [

QuizQuestion(question: "Do I like coffee?", answer: true, explanation: "Because it's awesome!"),
QuizQuestion(question: "Is bacon god's gift to mankind?", answer: true, explanation: "Because it's awesome!"),
QuizQuestion(question: "Should I take a nap right now?", answer: true, explanation: "You gotta review some code!"),
QuizQuestion(question: "Should I take a nap right now?", answer: true, explanation: "You gotta review some code!")
]

最佳答案

在磁盘上存储问题的两种方法是:1)核心数据2)SQLite

我建议使用以下架构来检索存储的问题:

1) 在 core data/sqlite 中存储 250 个问题,每个问题与数字 1-250 相关联。

2)当您需要随机选择50个问题时,生成50个随机数并检索与您生成的随机数相关的问题。

这种方法还可以帮助您存储 250 多个问题。

解释核心数据或 SQLite 超出了本答案的范围。您可以轻松地在线找到这些教程。

关于保存在 swift 文件中:您可以在带有问题的 swift 文件中声明一个结构。我认为这适用于 250 个问题,但这种方法的问题是它会占用内存。因此,如果您想稍后添加更多问题,这是不可扩展的。

关于arrays - 如何存储大型结构数组 - Swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30874014/

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