Swift 初步了解


前言:

本篇博客会结合OC对Swift进行简单介绍.

OC 用NSLog输出日志

NSLog(@"旭宝爱吃鱼");

Swift 用print输出日志

print("旭宝爱吃鱼")

Swift语句结束不需要加 ; 号

import Foundation

print("旭宝爱吃鱼")

常量和变量

OC 定义常量

const int a = 10;

Swift 定义常量

let a = 10

OC 定义变量

int a = 10;

Swift 定义变量

var a:Int = 10

Swift 类型不确定必须先赋初始值,以便确定类型

图片(类型不确定,没有赋初始值)

图片(类型确定,没有赋初始值)

图片(类型不确定,赋初始值)

图片(类型确定,赋初始值)

Float 表示32位浮点型

Double 表示64位浮点型

Swift类型的长度比OC更精确

Int,Int8,Int16,Int32,Int64,UInt

Swift 是类型安全的语言,如果直接赋值错误,直接报错,OC不会

图片(OC)

图片(Swift)

Swift 不允许隐式转换,但是可以显式转换

图片(隐式转换)

图片(显示转换)

对类型长度的检测

图片(可以检测出来的方法)

图片(不可以检测出来的方法->编译不会出错但是运行后崩溃)

编译:

运行:

运算符

+ - * / % ++ --

注意: ++ -- 将在Swift3.0中废弃

OC与Swift除了取模运算符,其他运算符用法都一样

图片(OC取模)

图片(Swift取模->支持小数)

Swift 类型安全 运算时保证运算类型一致(Float转Int取整 不四舍五入)

图片:

OC 支持连续赋值 Swift不支持连续赋值

图片(OC):

图片(Swift):

范围运算符:

封闭范围运算符:

包括闭包区域所有值: a...b

半封闭范围运算符

包含头不包含尾: a..<b

应用场景:遍历数组

for i in 1...5{

	print(i)

}
for i in 1..<5{

	print(i)

}

BOOL

C OC 并没有真正意义上的bool值

C 0 假 非0即真

OC 的BOOL类型 typedef signed char BOOL

Swift真正的BOOL

真: true 假: false

Swift 初步了解的更多相关文章

  1. Swift初步介绍

    Swift是本届WWDC大会苹果推出的一门新开发语言,开发者网站上已经放出了这门新语言的介绍.教程和手册,如果手里有一台iOS设备的话,通过苹果的iBooks应用,从它的官方书店里搜索Swift,可以 ...

  2. c++、oc、swift初步评价

    c++是面向对象的多态语言: oc是面向对象的动态语言: swift是面向对象.面向协议.高阶类型.函数式编程语言:

  3. 现代的新语言--Swift初探

    新的语言 WWDC简短的介绍,新的语言Swift就问世了,尽管新语言的名字导致贴吧下歌手粉丝和开发人员们争抢地盘- -,只是雨燕就是这么来了. WWDC keynote里给Swift打上了非常多标签: ...

  4. [转]关于 Swift 的一点初步看法

    本文转自:http://onevcat.com/2014/06/my-opinion-about-swift/ 感谢原作者 虽然四点半就起床去排队等入场,结果还是只能坐在了蛮后面的位置看着大屏幕参加了 ...

  5. 关于 Swift 的一点初步看法

    本文转自:http://onevcat.com/2014/06/my-opinion-about-swift/ 感谢原作者 尽管四点半就起床去排队等入场,结果还是仅仅能坐在了蛮后面的位置看着大屏幕參加 ...

  6. swift学习初步(四)-- 函数

    好了,让我们开始接着前几天写的系列博客开始今天的这篇博客.在swift里面如果你需要定义一个方法的话,你需要使用关键字:func,请看下面的这段代码: func sayHello(name:Strin ...

  7. swift学习初步(三)--控制流操作

    在上一篇博客里面,我谈到了swift里面的一些基本类型以及相关的操作,相信你看了之后一定会觉得其实swift也不难嘛.好吧,这篇博客里面要谈的一些高级操作,可能会让你有点头疼了. 好了,废话不多说了, ...

  8. Swift学习初步(一)

    前几天刚刚将有关oc的教程草草的看了一遍,发现oc其实也不像传说的那么难.今天又开始马不停蹄的学习Swift因为我很好奇,到底苹果出的而且想要代替oc的编程语言应该是个什么样子呢?看了网上的一些中文教 ...

  9. 基于swift语言iOS8的蓝牙连接(初步)

    看过一些蓝牙App的事例,大体上对蓝牙的连接过程进行了了解.但是开始真正自己写一个小的BLE程序的时候就举步维艰了.那些模棱两可的概念在头脑中瞬间就蒸发了,所以还是决定从最基本的蓝牙连接过程进行.这里 ...

随机推荐

  1. 利用getBoundingClientRect方法实现简洁的sticky组件

    补充于2016-03-20: 本文实现有不足,不完美的地方,请在了解本文相关内容后,移步阅读<sticky组件的改进实现>了解更佳的实现. sticky组件,通常应用于导航条或者工具栏,当 ...

  2. 【原创】kafka controller源代码分析(一)

    Kafka集群中的一个broker会被作为controller负责管理分区和副本的状态以及执行类似于重分配分区之类的管理任务.如果当前的controller失败了,会从剩下的broker中选出新的co ...

  3. EasyUI datagrid 行编辑

    一.HTML: <div class="info"> <div class="info_tt"> <span class=&quo ...

  4. unity3d引擎的学习

    1.在project里面建立一个Editor文件夹,并在其下面放置配置某个游戏物体X的脚本,就可以在游戏物体那一栏里面新建该游戏物体X. 2.将一个游戏物体B放到某个游戏物体F下,点击Reset po ...

  5. 【UWP】批量修改图标尺寸

    UWP开发中项目用到的图标资源非常多,通常每一种图标都有几种不同的尺寸,一般来说,我的项目所有Package.appxmanifest用到的图标就有40个,通常这些图标都是一样的,只是尺寸大小不一而已 ...

  6. C#遍历Dictionary

    C#遍历Dictionary方法 Dictionary<string, int> d = new Dictionary<string, int>(); foreach (Key ...

  7. 孙鑫MFC学习笔记14:网络编程

    1.OSI 2.TCP/IP与OSI对应关系 3.Socket 4.客户机/服务器模式 5.Windows Sockets 6.套接字类型 7.面向连接的socket编程 8.面向无连接的socket ...

  8. 说说这篇「我为什么从python转向go

    作者 CMGS2015.05.17 15:47* 写了7891字,被143人关注,获得了97个喜欢 说说这篇「我为什么从python转向go」 字数3748 阅读24227 评论21 喜欢81 恩看了 ...

  9. soap缓存问题

    问题描述: ws提供方在原有基础上增加了一个方法,通过php的soap扩展硬是获取不到该方法,提示,该方法不存在. 问题跟节: soap缓存问题,导致无法获取最新的ws文件信息 解决办法: 1.直接在 ...

  10. Java面试题汇总(一)

    1.谈谈你对http中post和get访问的理解. http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE.URL全称是资源描述符,我们可以这样认 为: ...