介绍

Swift是WWDC 2014上发布的一款新编程语言,要在未来取代Objective-C成为Mac、IOS开发的主要语言。

苹果要大力推Swift,Swift可以说必火无疑。

HelloWorld

使用XCode6创建一个Command Line Tool项目,Language选择Swift。

会自动创建一个main.swift文件,打开文件,发现代码异常简单,只有两行。

import Foundation
 
println("Hello, World!")

第一句import去掉也是可以的,swift一眼看上去最大的不同有两点,第一不需要main入口,类似于脚本语言,还有个让我很不好受的地方,就是不用敲分号了,这个真的很难适应,不过敲上分号也是不会报错的。

第一句导入了Foundation框架,Foundation肯定不会陌生,导入之后我们可以用NSString了,具体我们以后再谈。

println不说想必也知道,执行代码会打印Hellow World!。

数据类型

swift是弱类型的,使用var关键字声明变量,使用let关键字声明常量。

// 声明变量
var i = 1
// 修改变量的值
i = 10
 
// 声明常量,值不可修改
let c = 10

编译器会根据赋值自动分析其数据类型,不过有些情况我们也需要指定具体的数据类型,因为 1 这个数字可以是Int也可以是Double。指定数据类型的语法是 变量名 :数据类型。


// 声明Int类型变量
var i:Int = 1
 
// 声明Double类型变量
var d:Double = 1

方法&函数

方法(我不喜欢叫函数)声明使用关键字 func


// 计算两个数的和
func add(a:Int, b:Int) -> Int{
    return a + b
}

使用 -> 指定返回值,在方法上swift有一个很好的特性:方法可以有多个返回值,-> 后面跟(),多个数据类型用’,’分割, return 后面也是用()。


// 计算两个数的和以及差
func addAndSubtract(a:Int, b:Int) -> (Int, Int){
    return (a + b, a - b)
}
 
// 返回两个值
var (result1, result2) = addAndSubtract(10, 5)
 
println(result1)
println(result2)

方法还支持闭包,看来swift从javascript借鉴了不少。


// 使用闭包计算三个数的和
func fun1(a:Int, b:Int, c:Int) -> Int{
    func fun2() -> Int{
        return a + b;
    }
    return fun2() + c;
}
 

测试代码下载:https://github.com/baoyongzhang/HelloSwift/

转载于:https://www.cnblogs.com/baoyz/p/3771417.html

Swift初探(一)相关推荐

  1. Swift初探 1 helloWord

    #语法须知 1.Swift的源文件拓展名是.swift 2.Swift语言的2个不需要 (1)不需要编写main函数 从上往下按顺序执行,所以最前面的代码会被自动当做程序的入口 (2)不需要在每一条语 ...

  2. 初探swift语言的学习笔记一(基本数据类型)

    作者:fengsh998 原文地址:http://blog.csdn.net/fengsh998/article/details/28258805 转载请注明出处 如果觉得文章对你有所帮助,请通过留言 ...

  3. 初探swift语言的学习笔记四(类对象,函数)

    2019独角兽企业重金招聘Python工程师标准>>> swift扩展了很多功能和属性,有些也比较奇P.只有慢慢学习,通过经验慢慢总结了. 下面将初步学习一下类的写法. 码工,最大爱 ...

  4. 初探swift语言的学习笔记五(线程)

    作者:fengsh998 原文地址:http://blog.csdn.net/fengsh998/article/details/30354127 转载请注明出处 假设认为文章对你有所帮助,请通过留言 ...

  5. 初探swift语言的学习笔记十一(performSelector)

    作者:fengsh998 原文地址:http://blog.csdn.net/fengsh998/article/details/35842441 转载请注明出处 如果觉得文章对你有所帮助,请通过留言 ...

  6. 初探swift语言的学习笔记十(block)

    作者:fengsh998 原文地址:http://blog.csdn.net/fengsh998/article/details/35783341 转载请注明出处 如果觉得文章对你有所帮助,请通过留言 ...

  7. 初探swift语言的学习笔记九(OC与Swift混编)

    作者:fengsh998 原文地址:http://blog.csdn.net/fengsh998/article/details/34440159 转载请注明出处 如果觉得文章对你有所帮助,请通过留言 ...

  8. 初探swift语言的学习笔记八(保留了许多OC的实现)

    作者:fengsh998 原文地址:http://blog.csdn.net/fengsh998/article/details/32715833 转载请注明出处 如果觉得文章对你有所帮助,请通过留言 ...

  9. 初探swift语言的学习笔记七(swift 的关健词)

    作者:fengsh998 原文地址:http://blog.csdn.net/fengsh998/article/details/32133809 转载请注明出处 如果觉得文章对你有所帮助,请通过留言 ...

最新文章

  1. 排序中减治法算法伪代码_【算法与数据结构】伪代码与流程图
  2. 26_练习2_用户搜索_初始化显示(静态页面)
  3. python excel读取出错_python读取excel数据出错
  4. python编写格斗游戏_Python文字小游戏:搏击比赛
  5. python控制excel宏复制,将列从一个excel复制到另一个excel并从python运行宏
  6. 大数据WEB阶段 Js常用的页面操作
  7. python 文本处理库_实用又好用,6 款 Python 特殊文本格式处理库推荐
  8. mysql高并发不用事务_Mysql高并发加锁事务处理
  9. svn代码量统计工具StatSVN的使用
  10. 关于SSDP协议的基础知识
  11. 使用vue 开发chrome 插件
  12. 金融反欺诈 常用特征处理方法
  13. 如何撰写一份好的市场调查报告
  14. JVM源码分析之wait()和notify()
  15. 细数一次装修中遇到的几十个坑
  16. 基于Springboot健身会员俱乐部管理系统设计
  17. SQL server 数据库视频总结
  18. aoc usb显示器 linux,AOC首款USB连接云显示器
  19. r语言 新增一列数字类型_R语言总结
  20. SG3525matlab,基于SG3525芯片的大功率恒压/恒流LED电源研制 - 全文

热门文章

  1. [区块链] 密码学——Merkle 树
  2. 系统部署时的Could not load file or assembly 'Microsoft.VisualStudio.Enterprise.ASPNetHelper问题...
  3. PLSQL创建DBLINK
  4. linux 自动运行.out,linux系统定时自动重启springboot项目
  5. ElasticSearch核心基础之映射
  6. OffsetIndex和TimeIndex分析
  7. (35)FPGA打两拍、打三拍设计(第7天)
  8. parameter与localparam使用区别
  9. Vivado工程路径太长导致不能生成bit文件
  10. 房子网签后房产局查不到信息_日本房子:1R、1LDK分不清?凶宅如何分辨?