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,就主要指的这个,它 ...
随机推荐
- “canvas画布仿window系统自带画图软件"项目的思考
"canvas画布仿window系统自带画图软件"项目的思考 首先贴上DEMO图,并没有美化效果.对UI有要求的,请自带补脑技术. 思考一 在做项目的过程中,我发现"工具 ...
- ListView与RadioButton组合——自定义单选列表
标签: radiobuttonlistviewandroidlayout 2013-09-10 11:13 19396人阅读 评论(8) 收藏 举报 分类: Android(19) 版权声明: ...
- iOS开发——绘图电池按百分比显示
1.在DrawLine.h文件中提供了一个改变电池电量数值的接口 // // DrawLine.h // Demo-draw2 // // Created by yyt on 16/5/11. ...
- 在阿里云ECS(CentOS6.5)上安装mysql
首先查看服务器上是否已经安装过mysql 命令: rpm -qa | grep mysql 结果: 可以看到ECS上已经有mysql-libs这个包了.这并不影响安装. 查看yum服务器上提供的mys ...
- EQueue - 一个C#写的开源分布式消息队列的总体介绍(转)
源: EQueue - 一个C#写的开源分布式消息队列的总体介绍 EQueue - 一个纯C#写的分布式消息队列介绍2 EQueue - 详细谈一下消息持久化以及消息堆积的设计
- linux命令学习-4-lsof
lsof(list open files)是一个列出当前系统打开文件的工具.在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件. 在终端下输入ls ...
- elya:给移动APP创业者的工具集(一)
作为移动APP的创业者,往往遇到的困扰是,人家都开发过的功能了,劳资还得辛辛苦苦开发一遍,比如说什么积分系统啊,什么IM组件啊,什么滤镜啊,而且发一个版本官网就得改一次,做一次微信营销就要开发个H5页 ...
- Android线程之异步消息处理机制(一)
Android不允许在子线程中进行UI操作,但是有些时候,我们必须在子线程里去执行一些耗时任务,然后根据任务的执行结果来更新相应的UI控件.对于这种情况,Android提供了一套异步消息处理机制,完美 ...
- ExportExcel
package cn.com.jansh.core.util; import java.awt.print.Book; import java.io.BufferedInputStream; impo ...
- Aptana插件安装、配置
本文讲解在线安装的方式: 1.eclipse->help->Install New SoftWare... 在弹出的对话框Work with中填入[http://download.apta ...