Swift 可选类型(补充)

// 可选类型

// 可选类型: 这个值要么存在等于X,要么这个值根本就不存在

var serverResponseCode : Int? = 404 // ?的意思是这个只存在为404,要么这个值就不存在为nil

let possbileNumber = "123"

// let coverNumber: Int? = possbileNumber.toInt()

var responseCode: Int? = 404 // 要么存在为404

responseCode = nil  //  要么不存在为nil

// 可选类型类似于Objective-C中的指针nil的值,但是nil只对类(Class)有用,指对象不存在,而Swift中的nil不是指针,它代表特定类型的值不存在。任何类型的可选类的值都能赋值为nil,而不仅限于对象类型。

/*

1.Swift里面的nil,不能用于非可选类型

2.如果代码中的变量或常量需要适配值不存在的情况,务必将它声明为恰当的可选类型

3.如果定义的可选类型不提供默认值,默认为nil

*/

var strValue: String? = "hello"

let hasValue = strValue?.hashValue // 问号的意思是询问可选量是否响应后面的这个方法

print("hasValue is \(hasValue)")

/*总结 ?的使用场景

1.声明为Optional变量

2.声明为Optional变量,是否响应后面的这个方法

*/

时间: 2024-10-29 19:12:06

Swift 可选类型(补充)的相关文章

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可选类型_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 = "

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.上边的两中声明方式是有区别的 问号声明的变量 在使用的时候必须强制解包赋值