swift之基本运算符

本章大致介绍一些swift特别的运算符

元组比较

import Foundation
/*
元组比较:
1.从左到右比较,一旦比出结果,即大于或小于,就是整体的比较结果
2.如果每个对应的元祖相等,则整体的结果就是相等
3.要比较7个或者更多的元素的元祖,必须实现比较运算符
*/
if (1,"zebra")<(2,"apple"){
	print("the second win")
}
if(3,"apple")<(3,"bird"){
	print("the second win")
}
if(4,"dog") == (4,"dog"){
	print("sample")
}

三元条件运算符

与C语言中差不太多,直接上例子:

//三元条件运算符 
let contentHeight = 40
let hasHeader = true
let rowHeight = contentHeight + (hasHeader ? 50 : 20)
print(rowHeight)

关于 ? 与 ! //重点

swift语言中,如果不对变量进行初始化是不会自动给他一个初值的此处报错
此处报错的原因就是未初始化number就对他进行了使用

swift中有一种可选类型。(Optionals)

在定义变量时添加一个问号。以为此变量为可选类型,如果后面,给该变量赋值x。那么他就是x,如果没有赋值,他就是nil。

var optionalInt : Int?
print(optionalInt)
// 此时结果是nil
var optionalInt : Int?
optionalInt = 1
print(optionalInt)
//此时输出是Optional(1)

但是现在会出现警告,就是虽然现在有值,(不管是不是nil都认为有值)。但是她现在是可选类型,应给他确定类型。

!

此时 !就是用来强制解析:

var optionalInt : Int?
optionalInt = 1
print(optionalInt!)
//此时输出是1

此时optionalInt 是Int 类型。
所以有时候我们可以直接这么写:

var optionalInt : Int!
optionalInt = 1
print(optionalInt)
//此时输出是1

注:使用!来获取一个不存在的可选值会导致运行时错误。使用!来强制解析值之前,一定要确定可选包含一个非nil的值。
也就是说如果没有第二句赋值,此程序会崩掉。
所以使用!时要注意这点

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值