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. 了解SpringMVC框架及基本工作流程

    传统原生的JSP+Servlet在开发上过程上虽然简单明了,JSP页面传递数据到Servlet,Servlet整理数据(逻辑开发)或者从数据库提取数据接着再转发到JSP页面上,但是其似乎只能止步于此, ...

  2. 移动端中pagehide、pageshow的应用

    闲话少叙,来进入场景:订单提交页面,各种积分礼品卡规则都算好了,用户提交表单开始支付,支付完成进入成功提示页面,这是绝大部分网站的付款体验吧,那么问题来了,web移动端中进入成功提示页后,用户点击浏览 ...

  3. Sandcastle帮助文档生成器使用介绍

    一.软件介绍       Sandcastle是一个管理类库的文档编译器,是用于编译发布组件(Assembly)信息的一个工具,这个工具通过反射和Xslt技术,可以从dll文件及其xml注释(命令行编 ...

  4. 检测WCF服务是否在线(动态执行WCF服务)

    在我们的系统里有多个wcf支撑.但是有的时候会莫名的停止,于是今天写了一个服务,定时去检测其他wcf服务是否在线.那么最简单的办法自然是引用其他wcf服务让vs给我们自动生成clientProxy然后 ...

  5. Socket.Available 属性

    获取已经从网络接收且可供读取的数据量. 命名空间:   System.Net.Sockets程序集:  System(System.dll 中) 从网络接收的.可供读取的数据的字节数. 异常   Ex ...

  6. 用php怎么写一个用户注册登录的页面呢?

    想写就会尽快去写.如果用php写了就一定要用nodejs写出来啊,不写是小狗啊! 补充一下,想要实现的功能: 1.用户名重复检测 2.检测信息填写是否完整 3.邮箱是否已经被注册 4.实现ajax无刷 ...

  7. 使用POI替换word中的特定字符/文字改进版

    package com.xfzx.test.POI.main; import java.io.File; import java.io.FileInputStream; import java.io. ...

  8. C#编程总结(四)多线程应用

    C#编程总结(四)多线程应用 多线程应用很广泛,简单总结了一下: 1)不阻断主线程,实现即时响应,由后台线程完成特定操作2)多个线程,完成同类任务,提高并发性能3)一个任务有多个独立的步骤,多个线程并 ...

  9. 介绍开源的.net通信框架NetworkComms框架 源码分析(十四)StreamTools

    原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架  作者是英国人  以前是收费的 目前作者已经开源  许可是 ...

  10. 介绍开源的.net通信框架NetworkComms框架 源码分析(八)SharpZipLibGzipCompressor

    原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架  作者是英国人  以前是收费的 目前作者已经开源  许可是 ...