首页 > 解决方案 > 类数组错误 - ''表达式类型不明确,没有更多上下文''

问题描述

我对 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 行,“[”我收到一条错误消息:“表达式类型不明确,没有更多上下文”

我已经尝试检查与此“表达式类型不明确而没有更多上下文”错误相关的所有其他帖子,但我找不到与变量数组直接相关的帖子,而且我似乎是第一个这就是数组本身内部的错误。

谢谢!

标签: arraysjsonswift

解决方案


我从您的问题中了解到的是您的要求是您需要一个应该具有存储学生数据的属性的类,并且您需要将该数据添加到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将拥有学生详细信息,您可以访问它的属性。

希望这会有所帮助。


推荐阅读