swift 运算符快速学习(建议懂OC或者C语言的伙伴学习参考)
昨晚看了swift 的运算符的知识点,先大概说一下,这个点和 c 或者oc 的算运符知识点一样,都是最基础最基础的。其他的最基本的加减乘除就不多说了。注意的有几点点。。先说求余数运算:
一 :求余数运算
var a : int = 10
var b : int =3
var c : int = a % b
// c 的值在这时候是 1 ,这是以前基本运算我们都知道的
但swift的不同之处就在于 浮点型 的数也能求余数(以前我们学的求余数的类型只能整数)举一个简单的例子吧:
var a = 5.8
var b = 4.1 var c = % b
// 此时 c 的值就是 1.7 这在以前我们的基本运算时不允许的,但在swift 运算中确实是可以的
二:溢出运算
先记下这几个溢出运算符
1 : &+:溢出加
2: &-:溢出减
3: &*: 溢出乘
4: &/: 溢出除
5: &%:溢出求余
其实也简单,就是在正常的符号前面加 & 符号。然后后面用 : 结尾
下面在进行运算之前大家的先理解 溢出运算的含义
从字面意思理解,溢出,就是满的溢出来了。放在运算中就是数满的溢出来了。
// var a :int16 = 32767
int 16 的值是32728 ,你要在这个基础加 10 这个时候,这个值就溢出了,就会导致错误了。。。
这里大家最重要的就是理解这个 溢出运算的概念!!你理解了这个概念,剩下的具体运算就自己可以操作了,和其他运算也就没啥区别了。大家记得这里的运算是转化成二进制码运算的!!
三:范围运算符
这里的范围运算符就简单的提一下,你要熟练的使用OC编程的话,这个就真的很简单了,在C中我们经常这样表示范围[0,8]但在swift 中我们只是换了一种表达方式,先写个闭区间的如 a 到 b ,写法是 a...b 就这样子简单,要是半开区间的话就是 a..<b 这就是半开区间的表示,大家知道就行了,具体的还是得在实践中去用。
四:nil 合并运算符
a ?? b
这里面的 ?? 就是nil 合并算符,解释了它的功能大家也就会明白了。
?? 是用来判断 a 的值是不是 nil ,如果是 就会返回默认值 b 如果不是,就会返回 可选变量类型 a 所包含的实际值! 这就是它的作用了。
最后,剩下的 逻辑运算符,三目运算符,这些和以前的也没啥区别。
以上就是今天要总结的了,特码的广州真的好冷好冷好冷,快受不了。。找东西吃,补充能量吧!
swift 运算符快速学习(建议懂OC或者C语言的伙伴学习参考)的更多相关文章
- Swift 基础部分(建议掌握OC字符串知识的翻阅)
更新说明: Swift 目前已经发布到4.0版本了,以前写的这整个Swift学习系列的文章,有很多的不足之处,我会重新整理整个系列文章,也是相当于重新复习一遍Swift,后面系列文章的改动之处全都会做 ...
- Swift 2.0 字符串学习笔记(建议掌握OC字符串知识的翻阅)
自己公司开现在使用OC语言在写,但Swift似乎是苹果更推荐使用的开发语言,估计也是未来开发的趋势,自己以前有接触swift,但又由于公司的项目赶,也没有时间去好好地学习这款开发语言.现在年底了,项目 ...
- 新手的java学习建议
前言 进入IT领域,就像进入大海—浩瀚而广阔.然而,它又很容易让人迷茫,不知所措.所以,在IT的海洋中,找好一艘船特别重要,这艘船带你前进.减少迷失.这艘船或许是一个人,或一本书,又或许是一篇文章. ...
- 00.PHP学习建议
各位师弟师妹,大家好~PHP不是我们专业的本该有的方向.我不知道大家为什么来学习这门语言,也许是自己了解之后喜欢这门语言(我想这种可能在我们专业是挺少的),也许是听守中哥说这门语言简单好学,为了躲避学 ...
- Java学习路线图,专为新手定制的Java学习计划建议
怎么学习Java,这是很多新手经常会问我的问题,现在我简单描述下一个Java初学者到就业要学到的一些东西: 首先要明白Java体系设计到得三个方面:J2SE,J2EE,J2ME(KJAVA).J ...
- 转:Java学习路线图,专为新手定制的Java学习计划建议
转自:http://blog.csdn.net/jinxfei/article/details/5545874 怎么学习Java,这是很多新手经常会问我的问题,现在我简单描述下一个Java初学者到就业 ...
- java-web-j2e学习建议路线
JAVA学习之路(2) 首先要明白Java体系设计到得三个方面:J2SE,J2EE,J2ME(KJAVA).J2SE,Java 2 Platform Standard Edition,我们经常说 ...
- 新手如何学习java(java学习建议路线图)
怎么学习Java,这是很多新手经常会问我的问题,现在我简单描述下一个Java初学者到就业要学到的一些东西: 首先要明白Java体系设计到得三个方面:J2SE,J2EE,J2ME(KJAVA). ...
- Java-web-j2e学习建议路线【转】
首先要明白Java体系设计到得三个方面:J2SE,J2EE,J2ME(KJAVA).J2SE,Java 2 Platform Standard Edition,我们经常说到的JDK,就主要指的这个,它 ...
随机推荐
- JavaScript的Cookie操作
JavaScript是运行在客户端的脚本,因此一般是不能够设置Session的,因为Session是运行在服务器端的. 而cookie是运行在客户端的,所以可以用JS来设置cookie. 假 设有这样 ...
- Spring 工作原理
1.spring原理 内部最核心的就是IOC了,动态注入,让一个对象的创建不用new了,可以自动的生产,这其实就是利用java里的反射,反射其实就是在运行时动态的去创建.调用对象,Spring就是在运 ...
- LPC2478的外部中断使用
LPC2478外部中断 2478的外部中断模型如下 也就是说,port0和2支持外部中断,EINT0-2是三个独立管脚的中断,而EINT3则是port0和2的所有中断共同拥有的向量 对于port0和2 ...
- SPOJ839 OPTM - Optimal Marks
传送门 闵神讲网络流应用的例题,来水一水 要写出这道题,需要深入理解两个概念,异或和最小割. 异或具有相对独立性,所以我们把每一位拆开来看,即做大概$32$次最小割.然后累加即可. 然后是最小割把一张 ...
- ubuntu12.04+fuerte 下跑通lsd-slam——使用usb摄像头
上一篇介绍了如何使用数据集跑lsd-slam,这篇介绍如何用一个普通的usb摄像头跑lsd-slam,默认ubuntu12.04,fuerte已经安装好,workspace也已设置,如果没有,请参考上 ...
- 机器人局部避障的动态窗口法(dynamic window approach) (转)
源:机器人局部避障的动态窗口法(dynamic window approach) 首先在V_m∩V_d的范围内采样速度: allowable_v = generateWindow(robotV, ro ...
- IOS 创建和设置pch
1.添加pch文件 2.修改工程配置文件 Building Settings->All->Apple LLVM 6.0 -Language -> Prefix Header
- Android中关闭应用的三种方式
当应用不再使用的时候,通常需要关闭应用,我们可以使用三种方式关闭android应用: 第一种方式:首先获取当前进程的id,然后杀死该进程(推荐) android.os.Process.killProc ...
- --@angularJS--指令之单个点击展开demo
1.expander.html: <!DOCTYPE HTML><html ng-app="app"><head> <title&g ...
- CSS入门介绍
一.背景 这里将陆续介绍前端CSS中相关知识,先介绍CSS2.1,后续会介绍CSS3的相关属性,通过该系列的文章,希望能给准备转战前端的人员一些帮助,同时也帮助自己梳理知识,文章中如有错误,欢迎指出. ...