arrays - 类数组错误 - ''表达式类型不明确,没有更多上下文''
问题描述
我对 Swift 编码还很陌生,所以如果可以简单地修复此错误,请原谅!
我创建了一个数组,并为每个变量创建了一个类。我的课看起来像这样 -
class name {
var Name: name?
}
class subject {
var Subject: subject?
}
class grade {
var Grade: grade?
}
我的数组如下 -
var arr = [
[
name: "Koester",
subject: "Science",
grade: "9A"
],
[
name: "Koester",
subject: "Science",
grade: "9B"
]
]
在第二个代码块的第 8 行,“[”我收到一条错误消息:“表达式类型不明确,没有更多上下文”
我已经尝试检查与此“表达式类型不明确而没有更多上下文”错误相关的所有其他帖子,但我找不到与变量数组直接相关的帖子,而且我似乎是第一个这就是数组本身内部的错误。
谢谢!
解决方案
我从您的问题中了解到的是您的要求是您需要一个应该具有存储学生数据的属性的类,并且您需要将该数据添加到Array
.
检查以下代码:
创建一个电话,例如StudentDetail
:
class StudentDetail {
//Create Student Properties
var name: String?
var subject: String?
var grade: String?
//Initialise properties this way
init(name: String, subject: String, grade: String) {
self.name = name
self.subject = subject
self.grade = grade
}
}
现在创建一个类对象,如:
var user1Detail = StudentDetail(name: "Koester", subject: "Science", grade: "9A")
var user2Detail = StudentDetail(name: "Koester", subject: "Science", grade: "9B")
现在您可以以这种方式将其存储在Array
:
var arr = [StudentDetail]()
arr.append(user1Detail)
arr.append(user2Detail)
现在您arr
将拥有学生详细信息,您可以访问它的属性。
希望这会有所帮助。
推荐阅读
- regex - 用于拆分街道地址的正则表达式,街道地址的末尾可能有斜线或连字符的可选数字
- c++ - 为什么使用原始数据类型调用类成员而无需初始化?
- sql - SQL 从给定的零件列表中创建完整的零件列表(迭代)
- macos - 无法在 mac 终端中 cat shift-jis 文件
- c - BISON FLEX。提供输入文件时的意外输出
- go - 如何基于 javascript 调用调用“外部”操作
- c - 在while循环中使用execvp和fork时的无限循环
- python - 使用 tkinter 的 Python 聊天应用程序。主循环问题
- javascript - knockout.js 中的复选框逻辑
- php - 使用 PHP 获取 JSON 属性名称后跟项目名称值