设为首页 加入收藏

TOP

Studying-Swift :Day01(一)
2017-10-10 12:14:10 】 浏览:8985
Tags:Studying-Swift Day01

 

学习地址http://www.rm5u.com/       http://www.runoob.com/

  1. 如果创建的是 OS X playground 需要引入 Cocoa;  如果我们想创建 iOS playground 则需要引入 UIKit .
  2. iPhone或iTouch的宽为320像素,高为480像素,状态栏高为20像素,toobar高为44像素,tabbar高为49像素,导航栏高为44像素。

  3. typealias:类型别名对当前的类型定义了另一个名字;

  4. Swfit语言定义后缀?作为命名类型Optional(可选)的简写;

    var optionalInteger: Int?
    //或者
    var optionalInteger: Optional<Int>
  5. 强制解析:当你确定可选类型确实包含值之后,你可以在可选的名字后面加一个感叹号(!)来获取值。

    var myString:String?
        myString = "Hello, Swift!"
        if myString != nil {
           // 强制解析
            print( myString! )
        } else {
           print("myString 值为 nil")
        }

    注意:使用!来获取一个不存在的可选值会导致运行时错误。使用!来强制解析值之前,一定要确定可选包含一个非nil的值。

  6. 自动解析:你可以在声明可选变量时使用感叹号(!)替换问号(?)。

    var myString:String!
        myString = "Hello, Swift!"
        if myString != nil {
            print(myString)
        } else {
           print("myString 值为 nil")
        }
  7. 可选绑定:使用可选绑定(optional binding)来判断可选类型是否包含值,如果包含就把值赋给一个临时常量或者变量。

    if let constantName = someOptional {
            statements
       }
    // example :
       var myString : String?
       myString = "Hello, Swift!"
       if let yourString = myString {
           print("你的字符串值为 - \(yourString)")
       } else {
           print("你的字符串没有值")
       }
  8. 整型字面量可以是一个十进制,二进制,八进制或十六进制常量。 二进制前缀为 0b,八进制前缀为 0o,十六进制前缀为 0x,十进制没有前缀
    let decimalInteger = 17           // 17 - 十进制表示
    let binaryInteger = 0b10001       // 17 - 二进制表示
    let octalInteger = 0o21           // 17 - 八进制表示
    let hexadecimalInteger = 0x11     // 17 - 十六进制表示
  9. 注意:Swift中的字母采用的是Unicode编码[1]。Unicode叫做统一编码制,它包含了亚洲文字编码,如中文、日文、韩文等字符,甚至是我们在聊天工具中使用的表情符号
    如果一定要使用关键字作为标识符,可以在关键字前后添加重音符号(`)

  10. 浮点型字面量的默认推导类型为 Swift 标准库类型中的 Double,表示64位浮点数。
    十进制浮点型字面量 :1.25e2 表示 1.25 ? 10^2,也就是 125.0;同样,1.25e-2 表示 1.25 ? 10^-2,也就是 0.0125。
    十六进制浮点型字面量:0xFp2 表示 15 ? 2^2,也就是 60;同样,0xFp-2 表示 15 ? 2^-2,也就是 3.75。
    eg:   浮点型字面量允许使用下划线 _ 来增强数字的可读性,下划线会被系统忽略,因此不会影响字面量的值。同样地,也可以在数字前加 0,并不会影响字面量的值。
  11. 字符串型字面量:

    转移字符 含义
    \0 空字符
    \\ 反斜线 \
    \b 退格(BS) ,将当前位置移到前一列
    \f 换页(FF),将当前位置移到下页开头
    \n 换行符
    \r 回车符
    \t 水平制表符
    \v 垂直制表符
    \' 单引号
    \" 双引号
    \000 1到3位八进制数所代表的任意字符
    \xhh... 1到2位十六进制所代表的任意字符
  12. 位运算符:位运算符用来对二进制位进行操作,~,&,|,^分别为取反,按位与与,按位与或,按位与异或运算,如下表实例:
    p q p & q p | q p ^ q
    0 0 0 0 0
    0 1 0 1 1
    1 1 1 1 0
    1 0 0 1 1
    指定  A = 0011 1100 ; B = 0000 1101
    运算符 描述 图解 实例
    & 按位与。按位与运算符对两个数进行操作,然后返回一个新的数,这个数的每个位都需要两个输入数的同一位都为1时才为1。 (A & B) 结果为 12, 二进制为 0000 1100
    | 按位或。按位或运算符|比较两个数,然后返回一个新的数,这个数的每一位设置1的条件是两个输入数的同一位都不为0(即任意一个为1,或都为1)。 (A | B) 结果为 61, 二进制为 0011 1101
    ^ 按位异或. 按位异或运算符^比较两个数,然后返回一个数,这个数的每个位设为1的条件是两个输入数的同一位不同,如果相同就设为0。 (A ^ B) 结果为 49, 二进制为 0011 0001
    ~ 按位取反运算符~对一个操作数的每一位都取反。 (~A ) 结果为 -61, 二进制为 1100 0011 in 2's complement form.
    << 按位左移。左移操作符(<<)将操作数的所有位向左移动指定的位数。

    下图展示了11111111 << 1(11111111 左移一位)的结果。蓝色数字表示被移动位,灰色表示被丢弃位,空位用橙色的0填充。

    A << 2 结果为 240, 二进制为 1111 0000
    >> 按位右移。右移操作符(<<)将操作数的所有位向又移动指定的位数。

    下图展示了11111111 >> 1(11111111 右移一位)的结果。蓝色数字表示被移动位,灰色表示被丢弃位,空位用橙色的0填充。

    A >> 2 结果为 15, 二进制为 0000 1111
  13. 赋值运算:
    运算符 描述 实例
    = 简单的赋值运算,指定右边操作数赋值给左边的操作数。 C = A + B 将 A + B 的运算结果赋值给 C
    += 相加后再赋值,将左右两边的操作数相加后再赋值给左边的操作数。 C += A 相当于 C = C + A
    -= 相减后再赋值,将左右两边的操作数相减后再赋值给左边的操作数。 C -= A 相当于 C = C - A
    *= 相乘后再赋值,将左右两边的操作数相乘后再赋值给左边的操作数。 C *= A 相当于 C = C * A
    /= 相除后再赋值,将左右两边的操作数相除后再赋值给左边的操作数。 C /= A 相当于 C = C / A
    %= 求余后再赋值,将左右两边的操作数求余后再赋值给左边的操作数。 C %= A 相当于 C = C % A
    首页 上一页 1 2 3 下一页 尾页 1/3/3
    】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
    上一篇设置全局导航栏颜色,标题大小和U.. 下一篇swift计算label动态宽度和高度

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目