目录索引

清风注解-Swift程序设计语言

Point 1.

Swift 风格的"Hello, world"

代码事例:

println("Hello, world") 

注解:

  • Swift 语言的编码风格类似于 C 或 Objective-C。因此,拥有 C 或 Objective-C 开发经验的人更容易掌握 Swift 语言。
  • 在 Swift 中,没有包含在任何类或函数当中的代码,属于拥有全局作用域的代码。
  • 你不需要为了输入输出或者字符串处理导入一个单独的库。
  • println 函数是 Swift 语言内置函数之一。Swift 包含了 74 个内置函数
  • Swift 的语句不需要以分号结尾,这是推荐的做法,也是为了简化代码,降低代码输入量。
  • 你仍然可以在语句结尾添加分号。事实上在有些情况下分号仍然是必须的,例如 for 循环语句,一行中输入多条语句。

Point 2.

Swift 中的“main”函数

代码事例:

func main() {
}

注解:

  • Swift 语言没有类似于 C 或 Objective-C 中的 main 函数。
  • Swift 语言编写的程序,会把全局作用域中的代码做作程序的入口点。
  • 即使用户自定义一个名为 main 的函数,程序仍然不会像 C 或 Objective-C 那样,把 main 函数作为程序入口点,而是与普通函数一样去处理这个 main 函数。

Point 3.

Swift 中的常量和变量

代码事例:

 // 常量定义
let address = "北京市东城区王府井大街1号"
let iPhone6Price : Int = // 变量定义
var pageNumber =
var airTemperature : Float
var stockPrice : Double = 5.88
var employeeName : String = "张三"

注解:

  • 声明方式:常量使用 let 关键字声明,变量使用 var 关键字声明。
  • 常量的值一旦设定就不能改变,而变量的值可以随意更改。
  • iPhone6Price =          // 错误:常量的值一旦设定就不能改变
    stockPrice = 6.24 // 正确:变量的值可以随意更改
  • 常量或者变量的类型必须和你赋给它们的值一样。
  • var userID : Int
    userID = "XXX" // 错误:常量或者变量的类型必须和你赋给它们的值一样
    userID = // 正确:类型一样可以赋值
  • 声明常量或变量时,其类型是可选的。如果不指定常量或变量的类型,编译器将会自动推断类型。
  • let address = "北京市东城区王府井大街1号"   // 类型被推断为String
    var pageNumber = // 类型被推断为Int
  • 声明常量时,必须提供初始值。
  • let address = "北京市东城区王府井大街1号"   // 常量定义必须赋值
    let iPhone6Price : Int = // 常量定义必须赋值
  • 声明变量时,初始值不是必须的,但没有提供初始值时,必须提供变量类型。
  • var airTemperature : Float    // 变量声明不必赋初值,但此时必须标注类型
  • 如果初始值不能够提供足够的信息(用于类型推断),就需要在常量或变量后面声明类型,用冒号分割。
  • var airTemperature : Float =    // 若不标注为Float类型,编译器会把这个值推断为Int类型
  • 值永远不会被隐式转换为其他类型。如果你需要把一个值转换成其他类型,请显式转换。
  • let label = "The width is"
    let width =
    let widthLabel = label + String(width)   // 显示的把width的值转换为String类型
  • 有一种更简单的把值转换成字符串的方法:把值写到括号中,并且在括号之前写一个反斜杠。
  • let apples =
    let oranges =
    let appleSummary = "I have \(apples) apples."
    let fruitSummary = "I have \(apples + oranges) pieces of fruit."

Point 4.

类型标注

代码事例:

let iPhone6Price : Int =
var employeeName : String = "张三"

注解:

  • 当你声明常量或者变量的时候可以加上类型标注,说明常量或者变量中要存储的值的类型。
  • 如果要添加类型标注,需要在常量或者变量名后面加上一个冒号和空格,然后加上类型名称。
  • 没有类型标注的常量或变量,编译器将会自动推断类型。

Point 5.

常量和变量的命名

注解:

  • Swift 的常量与变量名长度没有限制。
  • 你可以用任何你喜欢的字符作为常量和变量名,包括 Unicode 字符
  • let π = 3.14159
    let 你好 = "你好世界"
    let

    清风注解-Swift程序设计语言:Point1~5的更多相关文章

    1. 清风注解-Swift程序设计语言

      前言 Apple 发布了全新的 Swift 程序设计语言,用来开发 iOS 和 OS X 平台的应用程序.其目的不言而喻:就是为了给老迈的 Objective-C 一个合适接班人!因此,不难预见,未来 ...

    2. 清风注解-Swift程序设计语言:Point11~15

      目录索引 清风注解-Swift程序设计语言 Point 11. 数值型字面量 代码事例: let decimalInteger = // 十进制的17 let binaryInteger = 0b10 ...

    3. 清风注解-Swift程序设计语言:Point6~10

      目录索引 清风注解-Swift程序设计语言 Point 6. 输出常量和变量 代码事例: // 输出的内容会在最后换行 println("hello, world") // 输出的 ...

    4. 《Swift程序设计语言》中国翻译和学习笔记page23

      ·<The Swift Programming Language>中文翻译及读书笔记,附件中为英文原版教程 因21页之前内容和技术关系不大,不做翻译整理,从第21页開始 · 页 1 本页主 ...

    5. 人工智能技术导论——逻辑程序设计语言PROLOG

      最近在复习人工智能导论,里面介绍了一种逻辑关系语言PROLOG,但这本书里面用到的编译器是Turbo PROLOG,这个编译器早就被淘汰了,我后来找的了它的升级版Visual PROLOG,但一些语法 ...

    6. 操作系统和程序设计语言的API使用的字符编码分析

       1.Java的运行环境中,String是什么编码? 使用java做程序设计语言,字符编码是和jvm相关的,和操作系统无关. java默认的编码是jvm在安装的时候就确定了的,它是根据你的系统的环境确 ...

    7. python程序设计语言笔记 第一部分 程序设计基础

      1.1.1中央处理器(CPU) cpu是计算机的大脑,它从内存中获取指令然后执行这些指令,CPU通常由控制单元和逻辑单元组成. 控制单元用来控制和协调除cpu之外的其他组件的动作. 算数单元用来完成数 ...

    8. 扩展《C程序设计语言》练习2-3程序通用性

      最近开始自学C语言,在看K&R的<C程序设计语言>.练习2-3要求写一个函数,将输入的十六进制数字字符串转换成与之等价的整数值,配套答案没有扩展程序的通用性,所以我就稍微改造改造. ...

    9. C程序设计语言(第二版)习题:第一章

      第一章虽然感觉不像是个习题.但是我还是认真去做,去想,仅此而已! 练习 1-1 Run the "hello, world" program on your system. Exp ...

    随机推荐

    1. Android输入法 监听事件

      登录界面有一个输入用户名和密码的编辑框: private EditText et_userName;// 账户 private EditText et_password;// 密码 布局文件如下: & ...

    2. CentOS上编译安装Git

      1. 安装(编译安装)软件 # 先安装git依赖的包 yum install zlib-devel yum install openssl-devel yum install perl yum ins ...

    3. 禁止select下拉框的其中某个选择项不能被选择

      <select name='Grade' class='s8'> <option value=''>— 请选择 —</option>? <optgroup l ...

    4. Python中关于try...finally的一些疑问

      最近看Vamei的Python文章,其中一篇讲异常处理的,原本看完没啥疑惑,或许是自己想的简单了. 看到评论,一个园友的问题引起我的兴趣. 他的问题是 def func(x): try: return ...

    5. 关于http状态码204理解

      HTTP的状态码有很多种,主要有1xx(临时响应).2xx(成功).3xx(已重定向).4xx(请求错误)以及5xx(服务器错误)五个大类,每个大类还对应一些具体的分类.平时我们接触比较多的是200. ...

    6. sass颜色

      1只定义一次颜色 {优点:可以给变量赋予不同的值: {缺点:变量名称更改与变量值混乱: 2变浅加深 /*颜色函数*/ .warning-box { background-color:lighten($ ...

    7. Bitmap、BitmapDrawable、BitmapFactory、Matrix类之间的关系

      1.BitmapFactory是一个工具类 Bitmap实现在android.graphics包中.但是Bitmap类的构造函数是私有的,外面并不能实例化,只能是通过JNI实例化.这必然是 某个辅助类 ...

    8. 【转】基于RSA算法实现软件注册码原理初讨

      1 前言 目前,商用软件和共享软件绝大部份都是采用注册码授权的方式来保证软件本身不被盗用,以保证自身的利益.尽管很多常用的许多软件系统的某些版本已经被别人破解,但对于软件特殊行业而言,注册码授权的方式 ...

    9. android对应版本号

      android对应版本号 Platform Version API Level VERSION_CODE Notes Android 4.2 JELLY_BEAN_MR1 Platform Highl ...

    10. naive bayes

      场景:垃圾邮件预测 目标: $p(y|w) = \frac{p(w|y)p(y)}{p(w)}$ 对于一封邮件来说,它的单词相同,所以$p(w)$可以不关心,计算得到分子就能知道更属于哪一类 所以,关 ...