位运算符(Bitwise Operators),在各种语言中都存在,虽然用的有些少,但是在诸如类别判断,类型检测等方案中经常用位运算来实现。很多枚举类型的成员都是将0x1左移位来赋值,而不是从0递增,这其中就蕴含着位运算。而数值运算中的溢出也是一个不常遇到但又值得注意的地方,虽然很少有人用Int8来存储大数,但了解下Swift处理溢出的这一特性也是很有用的。

Read More

在Swift发布后,我尝试用Swift和Core Data做了一个小Demo,名字叫“HardChoice”。它用于帮助人们随机生成一个问题的结果,当然结果是预设好的,并可以加入权值。本文将通过这个Demo来进一步阐述Core Data的知识。

本文包含以下内容:

  • 建立数据模型
  • Swift与Objective-C桥接
  • NSFetchedResultsController
  • UITextField键盘响应
  • 随机选择算法

Read More

本文参考自Swift文档,主要包括以下内容:

  • 简介
  • 自定义构造过程
  • 默认构造器
  • 值类型的构造器代理
  • 类的继承和构造过程
  • 可失败构造器
  • 必需构造器
  • 通过闭包和函数来设置属性的默认值

(2014-8-8更新至beta5语法)
(2014-10-24更新至Swift1.1)

Read More

  1. 右键单击程序,选择“显示包内容”
  2. 找到“info.plist”文件并打开
  3. 如果用Xcode打开:添加一个新的键值对,类型为Boolean,Key为“NSHighResolutionCapable”,Value选择“YES”;如果用其他软件打开,直接在plist节点中的dict中添加一个键值对就可以:NSHighResolutionCapable
  4. 为了使系统更新,复制一份“软件.app”,改成别的名字如“软件1.app”,删除原来的“软件.app”,再把“软件1.app”重命名为“软件.app”

可选类型(Optionals)在Swift中用于处理值可能缺失的情况,也就是说可能存在没有值的情况。C 和 Objective-C 中并没有可选类型这个概念。但在Objective-C中,一个方法的返回值可以是一个对象或nil值(nil表示缺少一个合法对象),而对象只是针对类而言,结构体、基本C类型和枚举并不适用nil来表示值的缺失,对于这些类型,Objective-C 方法一般会返回一个特殊值(比如NSNotFound)来暗示值缺失。这种表示“值缺失”方法不统一的局面使得调用方法的程序员蛋疼了-需要针对不同情况进行处理-但随着可选类型的诞生,这种情形在Swift中得到解决,Optionals可以表示任意类型值的缺失。(2014-8-8更新至beta5语法)

Read More

Objective-C中的ARC被Swift很好的继承下来了,本文参考自Swift文档网上的翻译,主要重点记录下Swift中的ARC与OC对比需要注意的地方。(2014-8-8更新至beta5语法)

Read More

最近一直边忙毕设边学Swift,终于看完了官方的教程(语言参考暂不打算看),在iBooks上做了一些笔记(看英文伤不起),感觉Swift是一门大杂烩类型的语言,我会记录一些我自认为以前遇到较少或者需要重点记忆的语法特性,在此作为分享,这次是运算符的重载,几乎每门语言都有,只是语法不一样罢了。
(2014-8-8更新至beta5语法)

Read More