swift学习之路(七)可选

原创 2016年06月01日 22:49:59

1、可选是指一个变量、常量或者其他类中存储有值得时候返回里面存储的值,没有值得时候返回nill。

example:

import Foundation


var roundValue:Int?


print("the value is\(roundValue?.description)")


//输出 the value is nill


2、可选绑定

example:

import Foundation


var optionalValue: Int?


if var MaxValue = optionalValue{


    MaxValue+=1

    print("the value is\(MaxValue)")

    

}//不会输出,optionalValue为空


3、当你确定这个可选类型的变量中肯定包涵有值时,可以使用名称紧跟“!”的方式强制获取类型中可选的值。

example:


import Foundation


var optionalValue: Int?


if var MaxValue = optionalValue{


    MaxValue+=1

    print("the value is\(MaxValue)")

    

}//不会输出,optionalValue为空


4、隐式解析

example:


import Foundation


let nullValue:String!="Not Null String"


print(nullValue)

//输出 Not Null String


5、可选运算符“??”

import Foundation

var succedCreateClass:Int?

var feedback = 1

var returnValue=succedCreateClass ?? feedback

print(returnValue)//输出1


可选运算符的执行逻辑如下,当运算符操作数a为nill是返回操作数b的值,当a不为nill时返回a的值。






Swift中的可选协议和方法的历史渊源

@objc protocol Transaction { func commit() -> Bool optional func isComplete() -> Bool }以上协...
  • mydo
  • mydo
  • 2016年07月25日 07:46
  • 955

Swift:可选类型(Optional)

在我们使用objective-c表示字符串信息的时候,可以用下面方法书写。 NSString *str = @"秋恨雪"; str = nil; 因为objective-c是弱类型语言,所以这里的...
  • sinat_27706697
  • sinat_27706697
  • 2015年08月13日 10:54
  • 2693

swift 2.0 协议 必须实现 和 可选实现

// 3.Protocol // 默认是必须实现的方法 protocol KeepBadyProtocol{     func clean()      } ...
  • bellazhouyi
  • bellazhouyi
  • 2015年10月16日 17:41
  • 1482

swift的可选绑定

对于option的值,可以使用可选绑定而不是强制解包来进行操作。 这里常量也可以改为变量,这样在解包成功之后,就可以在条件语句中利用这个常量或者变量进行相应的操作了。 注释: 这里其实做了两...
  • frankisbaby
  • frankisbaby
  • 2017年03月02日 16:45
  • 172

Swift-代理方法的使用

虽然 Swift 中闭包的功能非常强大, 但代理也不可替代, 各有各的好处, 合适的, 才是最好的!个人总结, 代理的使用需要五个步骤: 1.设置代理协议,定义可选或者必选方法 2 声明一个deleg...
  • Mazy_ma
  • Mazy_ma
  • 2017年01月12日 19:25
  • 1212

Swift3.0- 协议(protocol)

Swift3.0- 协议(protocol)代理,委托 /* * Protocol协议 (接口Interface或者纯虚函数) 协议用于统一方法和属性的名称,而不实现任何功能(使用代理设计模式...
  • MinggeQingchun
  • MinggeQingchun
  • 2017年01月18日 22:20
  • 1980

三十三 Swift3.0之 可选类型

/* 可选类型: 可选类型的本质其实就是一个枚举 None 没有值 Some 有值 格式: Optional 或 在类型后面加上?号 由于可选类型在Swift中随处可见, 所以系统做了一个语法糖,...
  • gezi0630
  • gezi0630
  • 2017年04月24日 09:43
  • 413

Swift_协议、代理(protocol、delegate可选@objc optional与必需、协议扩展、is as? as!检查协议)

ProtocolClass2.swift import UIKit //定义协议 protocol ProClassDelegate { //代理函数 func test(name...
  • Jason_chen13
  • Jason_chen13
  • 2017年08月21日 16:28
  • 524

QT学习之路2--hello world

注明:我的这些文章都是转载的,仅仅是因为这些文章写得不错,用作学习使用,也欢迎大家讨论!...
  • tgy_fujitsu
  • tgy_fujitsu
  • 2014年04月22日 09:09
  • 1286

swift语言中的三个知识点(可选类型、可选绑定、nil)

1.使用可选类型(opitionals)来处理值可能确实的情况,可选类型表示: 有值,等于x 没有值 比如下面的一个列子: let possibleNumber = “123” let convert...
  • u014783027
  • u014783027
  • 2015年07月15日 23:35
  • 2810
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:swift学习之路(七)可选
举报原因:
原因补充:

(最多只允许输入30个字)