当AS3遇见Swift

从Hello开始

As3

trace(“Hello Eko”)

Swift

println(“Hello Eko”)

挺象,有点隔壁王叔叔的意思。

常量和变量

As3

         public var str1:String=”eko”//变量

         public const str2:String=”eko”//常量

Swift

         var str1:String=”eko” //变量

         let str2:String=”eko” //常量

在swift中没有public private protected等修饰符号。同as3一样,swift中类型(:String,:Int)的标注也不是必须的。Swift可以推导出类型。

注释

As3与Swift是一样的

//我是一行注释

/*

         我是多行注释

*/

分号

A3和Swift一样,都不强制要求在每条语句的结尾使用分号

整数

As3 提供了int和uint类型。其中int是32位带符号的整数。而unit是32位无符号整数。

Swift提供了Int和Uint类型。在32位平台上,Int长度为32位(Int32),在64位平台上则是64位(Int64)。Uint同Int。

浮点

As3,只有Number(53位)

Swift有Double(64位)和Float(32位)

布尔值

As3 中是Boolean

Swift 中是Bool

它们的布尔值有相同的常量true和false

元组

定义:把多个值组合成一个复合值。元组内的值可以使任意类型,并不要求是相同类型

As3 没有

Swift有

可选类型(optionals

定义:如果有值就返回当前值,如果没有值就返回nil

这是Swift中独有的

if语句

As3的条件判断需要加”()”括号

if(name==”eko”){}

Swift可以省略

if name==”eko” {}

默认值

As3

int:o

unit:0

String:null

Number:NaN

Array:null

Object:null

Boolean:flase

Swift 没有默认值,只有当类型被声明为可选类型的时候,会被自动设置为nil

var eko:String?//加了问号(?)就变成可选类型了

那么在eko被赋值之前就是nil

赋值运算符

As3与Swift都使用“=”等号

数值运算

加减乘除等(+,-,*,/)AS3和Swift在这方面倒没什么不同。包括字符串的拼接也一样

“hello ”+”eko”。如果有一个变量str=“eko”,那么他怎么和字符串拼接呢。

As3

“hello ”+str

Swift

“hello \(str)”

区间运算

As3无

Swift有

例子:

for index in ... {

println("\(index) * 5 = \(index * 5)")

}

// 1 * 5 = 5

// 2 * 5 = 10

// 3 * 5 = 15

// 4 * 5 = 20

// 5 * 5 = 25

这里面1…5就是一个闭区间

逻辑运算

相同

逻辑非( !a )

逻辑与( a && b )

逻辑或( a || b )

当AS3遇见Swift(一)的更多相关文章

  1. 当As3遇见Swift(三)

    类 As3 Swift中似乎没有包,包路径的概念.因而显得简洁的多. package { public class ShuaiGe { } } Swift类 class ShuaiGe{ } 类的构造 ...

  2. 当As3遇见Swift(二)

    字符串:String 都是用String来表示,都是值类型,在传递过程中都会进行拷贝. 计算字符数量 As3: str.length Swift: countElements(str) 数组:Arra ...

  3. swift 当协议遇见了泛型

    由于泛型比较简单,并没有单独拿出来介绍!我们在定义函数的时候,有时候只是由于参数或者返回值类型不同,而具体的实现过程是一模一样的,这个时候我们就可以定义泛型函数而使可以传入不同的参数类型: func ...

  4. Swift中的Optional类型 (可选类型)与强制解包 ? !

    我们在swift的开发中会经常遇见?和! ,理解这两个符号深层次的内容对我们的开发是相当有利的: 目前网上对swift3.0的教程还相当的少,如果去搜索会发现早期的说法,在定义变量的时候,swift是 ...

  5. Swift Json 解析错误

    昨天在开发公司的ios程序时,遇见一个json解析的问题,并且是一个非常奇怪的问题. 因为原来的代码比较复杂,所以对代码进行了一些简化,具体代码如下: 服务器返回格式(PHP): array( arr ...

  6. 【面试必备】Swift 面试题及其答案

    原文:Swift Interview Questions and Answers 原作者:Antonio Bello 原作者介绍: Antonio 拥有丰富的编程经验.他开始编程的时候,内存单位还是 ...

  7. Swift 了解(3)

    类(Classes) 假设你是一个建筑师,你刚刚签了一个合同,要在一个新的小区修建20个相似的房子.在你派出建筑工队之前,你必须要画一个房子的设计图.这份设计图将会展现房子的外表和功能.把这份设计图当 ...

  8. Swift 学习笔记 (函数)

    函数 函数是一个独立的代码块,用来执行特定的任务.Swift中的函数与Object-C中的函数一样,但是声明与书写的方式不太一样,现在我们就通过几个例子介绍一下Swift中的函数.简单的来说,他与JS ...

  9. swift对象存储

    swift对象存储 简介 OpenStack Object Storage(Swift)是OpenStack开源云计算项目的子项目之一,被称为对象存储,提供了强大的扩展性.冗余和持久性.对象存储,用于 ...

随机推荐

  1. [转]LaTeX处女级入门命令语法集

    1.LaTeX文件的框架如下: \documentclass{article} \begin{document} This is the body of the article \end{docume ...

  2. the OS maintains a number of queues

    COMPUTER ORGANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCE NINTH EDITION To do its job, the OS ...

  3. prior knowledge

    https://en.wikipedia.org/wiki/Bayes'_theorem For example, if cancer is related to age, then, using B ...

  4. Apache Kafka源码分析 - PartitionStateMachine

    startup 在onControllerFailover中被调用, initializePartitionState private def initializePartitionState() { ...

  5. JDBC 增删查改

    public class MemberDaoImpl implements MemberDao { private Connection conn = null; public MemberDaoIm ...

  6. css中IE6fix问题

    .g-popup-mask, .g-popup-box { position:fixed; top:0; left:0; z-index:10000; _position:absolute; _top ...

  7. linux ssh scp 命令

    ssh jackielee@192.168.1.103 scp jackielee@192.168.1.103:/home/jackielee/develop/helloworld helloworl ...

  8. 使用SecureCRT连接ubuntu

    SecureCRT SSH2连接新装的UBUNTU 14.04 LTS 发现UBUNTU默认没有安装SSH 服务 在UBUNTU上 sudo apt-get install openssh-serve ...

  9. Java高级之线程同步

    本文来自http://blog.csdn.net/liuxian13183/ ,引用必须注明出处! 关于实现多线程的意义,"从业四年看并发"一文已经讲述,而本篇主要讲一下常用的设计 ...

  10. zepto源码--$.map,$.each,$.grep--学习笔记

    从相对比较简单的说起: 1.$.grep  获取一个新数组,新数组只包含回调函数中返回 true 的数组项. 调用javascript中数组原生函数filter,对elements进行过滤,保留回调函 ...