Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/20.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 如何检查一个结构的实例本身是否是另一个结构的实例_Swift_Struct_Xcode8_Swift Playground - Fatal编程技术网

Swift 如何检查一个结构的实例本身是否是另一个结构的实例

Swift 如何检查一个结构的实例本身是否是另一个结构的实例,swift,struct,xcode8,swift-playground,Swift,Struct,Xcode8,Swift Playground,我在Swift中有两个以下类型的结构,我想可视化与在struct Palazzo中实例化的Appartamento结构相关的数组值,但我的能力不允许这样做。你知道这是否有可能以及如何做到吗?我曾想过使用类型转换,但我认为它们只适合对象类而不适合结构 struct Appartamento { var interno: String var numeroBagni: Int } struct Palazzo { let appartamenti: [

我在Swift中有两个以下类型的结构,我想可视化与在struct Palazzo中实例化的Appartamento结构相关的数组值,但我的能力不允许这样做。你知道这是否有可能以及如何做到吗?我曾想过使用类型转换,但我认为它们只适合对象类而不适合结构

struct Appartamento {
    var interno:        String
    var numeroBagni:    Int
}

struct Palazzo {
   let appartamenti:   [Appartamento]
    let nome:           String
    let indirizzo:      String
}

var appartamenti: [Appartamento] = [
    Appartamento(interno: "1a", numeroBagni: 2),
    Appartamento(interno: "2a", numeroBagni: 1),
    Appartamento(interno: "1", numeroBagni: 2),
    Appartamento(interno: "2", numeroBagni: 1),
]

var palazzi: [Palazzo] = [
      Palazzo(appartamenti: [appartamenti[0], appartamenti[1]],
             nome: "Palazzo Colere",
             indirizzo: "Via Colere, 7"),
      Palazzo(appartamenti: [appartamenti[2], appartamenti[3]],
             nome: "Palazzo Leoni",
             indirizzo: "Via Alberi, 17")]


for palazzo in palazzi {
    print("\(palazzo.nome):")
    for appartamento in appartamenti {
        // ************************************
        if (the apartment is an instance of the palazzo structure then it displays the data appartamento) { // ******************
            print .....
        }
        // ************************************
}

如果要打印给定公寓的信息,请使用
Palazzo的成员
appartamenti

for palazzo in palazzi {
    for appartamento in palazzo.appartamenti { ...

打印palazzo.appartamenti怎么样?有时最简单的解决方案会失控。。。谢谢这是解决办法。谢谢,其他问题确实还没有解决(除了一个可以确认的问题)。。。