import UIKit
創(chuàng)新互聯(lián)建站專(zhuān)注于企業(yè)營(yíng)銷(xiāo)型網(wǎng)站、網(wǎng)站重做改版、石鼓網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5場(chǎng)景定制、成都商城網(wǎng)站開(kāi)發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性?xún)r(jià)比高,為石鼓等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。
//類(lèi)中所有的屬性在對(duì)象初始化時(shí),必須有初始化值
class Person : NSObject {
var name : String?
var view : UIView?
}
// 1.定義可選類(lèi)型
// 1>普通定義可選類(lèi)型的方式
// var name : Optional<String>
// 2>語(yǔ)法糖
var name : String?
// 2.給可選類(lèi)型賦值
name ="why"
// 3.從可選類(lèi)型中取值
// Optional("why")
print(name)
//從可選類(lèi)型中取值:可選類(lèi)型!-->強(qiáng)制解包
//print(name!)
// 4.注意:如果可選類(lèi)型中沒(méi)有值,那么強(qiáng)制解包程序會(huì)崩潰
//強(qiáng)制解包是非常危險(xiǎn)的操作:建議在解包前先判斷可選類(lèi)型中是否有值
if name != nil {
print(name!)
print(name!)
print(name!)
}
// 5.可選綁定
// 1> 判斷name是否有值,如果沒(méi)有值,則不執(zhí)行{}.
// 2>如果有值,則對(duì)可選類(lèi)型進(jìn)行解包,并且將解包后的值賦值給前面的常量
//if let tempName = name {
// print(tempName)
//}
if let name = name {
print(name)
print(name)
print(name)
print(name)
}
/*
可選值: optionals有兩種狀態(tài):
1.有值 2.沒(méi)有值, 沒(méi)有值就是nil
*/
//有值:
var optValue1: Int? = 9
//沒(méi)有值:
var optValue2: Int?
var optValue3: Int? = nil
/*
可選值可以利用if語(yǔ)句來(lái)進(jìn)行判斷
*/
var optValue4: Int?
ifoptValue4 !=nil
{
print(optValue4)
}else
{
print(optValue4)
}
/*
提取可選類(lèi)型的值(強(qiáng)制解析)
會(huì)將optValue中的整型值強(qiáng)制拿出來(lái)賦值給變量result,換句話(huà)說(shuō)就是告訴編譯器optValue一定有值,因?yàn)榭蛇x類(lèi)型有兩種狀態(tài)有值和沒(méi)有值,所以需要告訴編譯器到底有沒(méi)有值
需要注意的是如果強(qiáng)制解析optValue,但是optValue中沒(méi)有值時(shí)會(huì)引發(fā)一個(gè)運(yùn)行時(shí)錯(cuò)誤
*/
var optValue5: Int? = 9
var result1: Int = optValue5!
print(result1)
//報(bào)錯(cuò):
var optValue6: Int?
var result2: Int = optValue6!
print(result2)
/*
可選綁定:
為了更安全的解析可選類(lèi)型的值,一般情況下使用可選綁定
如果optValue沒(méi)有值就不會(huì)做任何操作, 如果optValue有值會(huì)返回true并將optValue的值賦值給result執(zhí)行大括號(hào)中的內(nèi)容
*/
var optValue: Int? = 9
if let result3 = optValue
{
print(result3)
}
可選類(lèi)型的使用
let urlString ="http://www.520it.com"
// 1.普通寫(xiě)法
let url : NSURL? = NSURL(string: urlString)
if url != nil {
let request = NSURLRequest(URL: url!)
}
//可選綁定
if let url = url {
let request = NSURLRequest(URL: url)
}
//可選綁定的簡(jiǎn)介寫(xiě)法
if let url = NSURL(string: urlString) {
let request = NSURLRequest(URL: url)
}
網(wǎng)頁(yè)題目:05.swift?可選類(lèi)型
URL分享:http://jinyejixie.com/article14/gdpode.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開(kāi)發(fā)、面包屑導(dǎo)航、軟件開(kāi)發(fā)、ChatGPT、自適應(yīng)網(wǎng)站、靜態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)