Swift语法2.20(嵌套类型)

嵌套类型(Nested Types)

枚举类型常被用于实现特定类或结构体的功能,也能够在有多种变量类型的环境中,方便地定义通用类或结构体来使用.

为了实现这种功能,Swift允许你定义嵌套类型,可以在枚举类型结构体中定义支持嵌套的类型。

要在一个类型中嵌套另一个类型,将需要嵌套的类型的定义写在被嵌套类型的区域{}内,而且可以根据需要定义多级嵌套。

嵌套类型实例

类TheClass 中嵌套了 结构体TheStruct
结构体TheStruct 中嵌套了 枚举TheEnum

<pre>
<code>
`
class TheClass
{
var theStruct = TheStruct()
var description :String { return "Class" + " " + theStruct.description }

struct TheStruct
{
    var theEnum = TheEnum.Case1
    var description : String    {   return "Struct" + " " + theEnum.description  }
    
    enum TheEnum : String
    {
        case Case1
        var description : String    {   return "Enum"   }
    }
}

}
`
</code>
</pre>

嵌套类型的引用

<pre>
<code>
`
let theClass = TheClass()
print(theClass.description)

let theStruct = TheClass.TheStruct()
print(theStruct.description)

let theEnum = TheClass.TheStruct.TheEnum.Case1
print(theEnum.description)
//打印
//Class Struct Enum
//Struct Enum
//Enum

`
</code>
</pre>

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 本章将会介绍 定义一个类层次作为例子检查类型向下转型Any 和 AnyObject 的类型转换嵌套类型实践引用嵌套...
    寒桥阅读 2,778评论 0 1
  • 常量与变量使用let来声明常量,使用var来声明变量。声明的同时赋值的话,编译器会自动推断类型。值永远不会被隐式转...
    莫_名阅读 3,297评论 0 1
  • 132.转换错误成可选值 通过转换错误成一个可选值,你可以使用 try? 来处理错误。当执行try?表达式时,如果...
    无沣阅读 5,132评论 0 3
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,064评论 19 139
  • 得承认,我是一个自私且有点小气的人,我很少发朋友圈,因为发朋友圈总有种一层层被扒光的错觉,但我又喜欢通过朋友圈偷窥...
    苏呀苏姑凉阅读 1,144评论 0 0

友情链接更多精彩内容