swift可选类型_09_optional基本使用

//: Playground - noun: a place where people can play

import UIKit

//1.Swift中的变量或者常量必须经过初始化或者赋值后才能使用
var myInt:Int
myInt = 1
print(myInt)

//2.使用可选类型来处理一个常量或者变量的值可能缺失的情况
let correctStr = "123"
var correctInt = Int(correctStr)

let wrongStr = "hello"
var wrongInt = Int(wrongStr)

//可选类型有两种状态:不可能出现不合理的值的状态,能够保证安全性
//(1)nil表示没有值
//(2)有合法值

//3.定义可选类型的变量
var myInt2 : Int?
print(myInt2)

var str1 : String?

//4.非可选类型的变量不能赋值为nil
//var str2 : String =  nil

//5.可选类型的强制解包
let str2 : String? = "hello"
print(str2)
print(str2!)

//解包的前提是必须为可选类型,而且值不能为nil

//6.隐式解包:确定可选类型有合法值时,直接在类型名后加!进行隐式解包,使用可选类型变量时不再需要强制解包
//var result : Int! = 50
//print(result)

//7.可选绑定:可选类型在if或者while等语句中赋值并进行判断的写法,叫可选绑定
//如果可选类型的值为nil,则if条件不成立,不执行{}中的内容
//如果可选类型有合法值,则把些合法值赋值给result,并且if条件成方,执行{}中的内容。
var possibleNum : Int? = nil
if let result = possibleNum {

    print(result)

}

//定义一个函数来把字符串转成化Int
时间: 2024-11-05 17:04:29

swift可选类型_09_optional基本使用的相关文章

Swift 可选类型(补充)

// 可选类型 // 可选类型: 这个值要么存在等于X,要么这个值根本就不存在 var serverResponseCode : Int? = 404 // ?的意思是这个只存在为404,要么这个值就不存在为nil let possbileNumber = "123" // let coverNumber: Int? = possbileNumber.toInt() var responseCode: Int? = 404 // 要么存在为404 responseCode = nil 

Swift可选类型和可选链

一.可选类型 有时候在Swift程序的表达式可以看到?和!等符号,它们代表的含义是什么,这些符号都和可选类型有关. 有时候使用一个变量和常量,它保存的值可能有也可能没有 1.比较给一个变量赋值nil,需要下面的表达式赋值 class Empoyee{ var  int : = 0 var name:String = "" var job : String ="" } var emp : Employee? = nil //后面加上?号可以接受空值,不加?不能赋予空值

[swift]可选类型

可选类型 <Swift权威指南>第2章千里之行始于足下——Swift语言基础,本章挑选了Swift语言的最基本特性加以介绍.尽管这些特性只占Swift全部特性的很少一部分,但却是所有的Swift程序都必不可少的.所以,读者通过对本章学习,可以使用Swift编写最基本的程序,并对Swift提供的新特性深深地震撼.本节为大家介绍可选类型. AD: 2.6  可选类型 可选类型也是Swift语言新添加的对象.主要是为了解决对象变量或常量为空的情况.在前面定义的变量和常量都不能为空.里面必须要有值.

Swift 可选类型-备

我们先看看如下代码:   var n1: Int = 10 n1 = nil         //编译错误 let str: String = nil    //编译错误 Int和String类型不能接受nil的,但程序运行过程中有时被复制给nil是在所难免的,Swift为每一种数据类型提供一种可选类型(optional),即在某个数据类型后面加上问号(?)或感叹号(!),修改前文示例代码:   var n1: Int? = 10 n1 = nil let str: String! = nil

Swift - 可选类型说明

可选类型是Swift的一个特色.它表示一个变量有可能有值,也可能没有值(nil). 声明的方式是“数据类型+问号”. 而当要使用一个可选类型的变量是,要在后面加感叹号“!”. 1 2 3 4 5 6 7 8 9 var height:Int?  //声明一个可选类型,默认值为nil if height == nill{     println("你有多高?") }else{     println("你有\(height!)高.") } height = 199 /

swift 可选类型(optional)--- swift 入门

一.思维导图 二.代码 //这样无形中就会让代码很丑陋 if x != nil && y != nil { print("x或y都不等于空") } print("x或y有一个为空") //1 使用?? let name:String? = "我最帅" let age:Int = 18 //??代表可选型解包 //下面两个执行结果由于值的变化而表现的不一样, print(name ?? "" + String(a

Swift入门(四)——可选类型(Optionals)与断言(Assert)

可选类型是什么? 首先看一个问题,Swift中String类型的变量有一个叫做toInt的方法,可以把String类型变量转换为Int类型变量. var stringValue = "5" var intValue = stringValue.toInt(); println("intvalue = \(intValue)") 执行以上方法后得到了奇怪的结果: intvalue = Optional(5) 其实,可以发现,toInt方法的返回值并不是Int,而是In

Swift学习-----可选类型

可选类型 * 可选类型表示变量可以有值, 也可以没有值 * C 和 Objective-C 中并没有可选类型这个概念 * Swift中只有可选类型才可以赋值为nil * 如果你声明一个可选常量或者变量但是没有赋值,它们会自动被设置为nil * 格式: Optional<类型> 或 在类型后面加上?号 可选类型的取值是一个枚举 * None 没有值 * Some 有值 * 由于可选类型在Swift中随处可见, 所以系统做了一个语法糖, 在类型后面加上? 注意: * nil不能用于非可选的常量和变

swift中的可选类型

前几天转了一篇介绍?和感叹号的文章,现在自己搞明白了,记录一下! 1.swift中的可选类型变量表示这个变量可能有值,也可能为空.你可能会想这个直接用一个指针不就搞定了么?但swift是不支持指针的.(这个解释有些牵强,但是在给一个普通变量赋值为nil的时候,会出现语法错误) . 2.问号和叹号都能声明swift中的可选类型变量,比如: var num : Int? = 10 var num1 : Int! = 11 3.上边的两中声明方式是有区别的 问号声明的变量 在使用的时候必须强制解包赋值