swift基础学习(05)[构造器。init]

前端之家收集整理的这篇文章主要介绍了swift基础学习(05)[构造器。init]前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

1.构造过程:使用类、结构体、或枚举类型的一个实例准备过程:切无需返回值@H_404_13@

构造器@H_404_13@

init(){@H_404_13@

执行构造过程@H_404_13@

}@H_404_13@


@H_404_13@

1-1:不带参数的init@H_404_13@

struct Fahrenheit {@H_404_13@

var temperature :Double@H_404_13@

init(){@H_404_13@

temperature = 12.0@H_404_13@

var f = Fahrenheit()@H_404_13@

print(f.temperature)@H_404_13@

@H_404_13@

1-2:带参数的init 第一个构造器拥有一个构造参数,其外部名字为 fromFahrenheit,内部名字为 fahrenheit ;第二个构造器也拥 有一个构造参数,其外部名字为 fromK,内部名字为 k@H_404_13@

struct FahreheitTwo {@H_404_13@

var temperateTwo:Double@H_404_13@

init(fromFahrenheit fahrenheit:Double){@H_404_13@

temperateTwo = fahrenheit - 5@H_404_13@

init(fromK k:Double){@H_404_13@

temperateTwo = k - 6@H_404_13@

@H_404_13@

let water = FahreheitTwo(fromFahrenheit:22)@H_404_13@

print(water.temperateTwo)@H_404_13@

:需留一个外部名称用来作为入口@H_404_13@

1-3:不带外部名字的init_代替@H_404_13@

init(_ k:Double){@H_404_13@

temperateTwo = k - 6@H_404_13@

1-4:可选属性:类型逻辑上取值可以为空@H_404_13@

class Option {@H_404_13@

let text:String@H_404_13@

var response:String?@H_404_13@

init(text:String){@H_404_13@

self.text = text@H_404_13@

func ask() {@H_404_13@

print(text)@H_404_13@

let result = Option(text:"hello");@H_404_13@

print(result.ask())@H_404_13@

}@H_404_13@

1-5:默认构造器:如果结构体和类的所有属性都有默认值,同时没有自定义的构造器,那么 Swift 会给这些结构体和类创建一个默 认构造器。这个默认构造器将简单的创建一个所有属性值都设置为默认值的实例@H_404_13@

猜你在找的Swift相关文章