Swift的笔记和参考
原文:Swift的笔记和参考
好久没来了,趁着新语言Swift发布,继续钻研中!
Create Class 创建类 (多态效果)
- // Create Class 创建类
- class MyClass {
- // Properties 成员变量
- init() {
- // Constructor 构造函数
- }
- // Method 成员方法
- func doIt() {
- println("doIt")
- }
- func doIt() -> Int {
- return
- }
- func doIt(a:Int) -> Int {
- return a
- }
- func doIt(a:Int, b:Int) -> Int {
- return a + b
- }
- func doIt() -> String {
- return ""
- }
- func doIt(a:String) -> String {
- return a
- }
- func doIt(a:String, b:String) -> String {
- return a + b
- }
- }
- // Create / Using an Instance 创建 / 使用 一个实例
- var a = MyClass()
- a.doIt("Wang ", b: "Zhipeng")
Enums 枚举
- // Enums 枚举
- enum ComcSoftType: Int {
- case DevelopmentEngineer =
- case TestEngineer =
- }
- var myType = ComcSoftType.DevelopmentEngineer
Declaring Variables 变量的声明 (可选变量)
- // Declaring Variables 变量的声明
- var mutableDouble:Double = 1.0
- mutableDouble = 2.0
- let constantDouble:Double = 1.0
- //constantDouble = 2.0 Error 错误
- var autoDouble = 1.0
- // Optional Value 可选变量 (新机制)
- var optionDouble:Double? //此刻 optionDouble 根本没有分配内存,对其取地址: &optionDouble 为NULL
- optionDouble = 1.0 //这时候开始 optionDouble 才会开始分配内存
- if let defineDouble = optionDouble {
- println("已经分配内存")
- }
- else {
- println("没有分配内存")
- }
Control Flow 控制流
- // Control Flow 控制流
- var condition = true
- if condition {
- println("正确")
- }
- else {
- println("错误")
- }
- var val = "Four"
- switch val {
- case "One":
- "One"
- case "Two", "Three":
- "Two, Three"
- default:
- "default"
- }
- // omits upper value, use ... to include 省略了上限值,使用 ... 包括
- for i in .. {
- println("\(i)")
- }
String Quick Examples 字符串的例子
- // String Quick Examples 字符串的例子
- var firstName = "Zhipeng"
- var lastName = "Wang"
- var helloString = "Hello, \(lastName) \(firstName)"
- var tipString = ""
- var tipInt = tipString.toInt()
- extension Double {
- init (string:String) {
- self = Double(string.bridgeToObjectiveC().doubleValue)
- }
- }
- tipString = "24.99"
- var tipDouble = Double(string:tipString)
Array Quick Examples 数组的例子
- // Array Quick Examples 数组的例子
- var person1 = "One"
- var person2 = "Two"
- var array:String[] = [person1, person2]
- array += "Three"
- for person in array {
- println("person: \(person)")
- }
- var personTwo = array[]
- println("personTwo: \(personTwo)")
Dictionary Quick Examples 字典的例子
- var dic:Dictionary<String, String> = ["One": "",
- "Two": "",
- "Three": ""]
- dic["Three"] = "" // Update Three
- dic["One"] = nil // Delete One
- for(key, value) in dic {
- println("key: \(key), value: \(value)")
- }
Swift的笔记和参考的更多相关文章
- 记录:swift学习笔记1-2
swift还在不断的更新做细微的调整,都说早起的鸟儿有虫吃,那么我们早点出发吧,趁着国内绝大多数的coder们还没有开始大范围普遍应用. 网上有些大神说:swift很简单!我不同意这个观点,假如你用h ...
- 【swift学习笔记】二.页面转跳数据回传
上一篇我们介绍了页面转跳:[swift学习笔记]一.页面转跳的条件判断和传值 这一篇说一下如何把数据回传回父页面,如下图所示,这个例子很简单,只是把传过去的数据加上了"回传"两个字 ...
- Swift学习笔记(一)搭配环境以及代码运行成功
原文:Swift学习笔记(一)搭配环境以及代码运行成功 1.Swift是啥? 百度去!度娘告诉你它是苹果最新推出的编程语言,比c,c++,objc要高效简单.能够开发ios,mac相关的app哦!是苹 ...
- Swift开发笔记
Swift开发笔记(一) 刚开始接触XCode时,整个操作逻辑与Android Studio.Visual Studio等是完全不同的,因此本文围绕IOS中控件的设置.事件的注册来简单的了解IOS开发 ...
- swift学习笔记5——其它部分(自动引用计数、错误处理、泛型...)
之前学习swift时的个人笔记,根据github:the-swift-programming-language-in-chinese学习.总结,将重要的内容提取,加以理解后整理为学习笔记,方便以后查询 ...
- swift学习笔记4——扩展、协议
之前学习swift时的个人笔记,根据github:the-swift-programming-language-in-chinese学习.总结,将重要的内容提取,加以理解后整理为学习笔记,方便以后查询 ...
- swift学习笔记3——类、结构体、枚举
之前学习swift时的个人笔记,根据github:the-swift-programming-language-in-chinese学习.总结,将重要的内容提取,加以理解后整理为学习笔记,方便以后查询 ...
- swift学习笔记2——函数、闭包
之前学习swift时的个人笔记,根据github:the-swift-programming-language-in-chinese学习.总结,将重要的内容提取,加以理解后整理为学习笔记,方便以后查询 ...
- swift学习笔记1——基础部分
之前学习swift时的个人笔记,根据github:the-swift-programming-language-in-chinese学习.总结,将重要的内容提取,加以理解后整理为学习笔记,方便以后查询 ...
随机推荐
- MVC模式编程演示样本-登录认证(静态)
好,部分博客分享我的总结JSP-Servlet-JavaBean思想认识和三层编程模型的基本流程,ZH- CNMVC该示例实现演示的编程模式-登录身份验证过程,在这里,我仍在使用静态验证usernam ...
- 【C++探索之旅】开宗明义+第一部分第一课:什么是C++?
内容简介 1.课程大纲 2.第一部分第一课:什么是C++? 3.第一部分第二课预告:C++编程的必要软件 开宗明义 亲爱的读者,您是否对C++感兴趣,但是C++看起来很难,或者别人对你说C++挺难的, ...
- ASP.NET自定义控件组件开发 第三章 为控件添加事件 后篇
原文:ASP.NET自定义控件组件开发 第三章 为控件添加事件 后篇 第三章 为控件添加事件 后篇 前一篇文章只是简单的说了下事件,但是大家应该方法,在ASP.NET自定义控件中只是简单那么定义事件是 ...
- mbed列--基于飞思卡尔FRDM KL25Z鼠标设计的高速实现
========================================================== 原创文章转载请注明:blog.csdn.net/guo8113 ========= ...
- 嵌入在网站上Flash播放机(2)
然后在一个博客.这里有一个flash嵌入式播放器.这是公司内部使用的flash播放机,支持格更多款式,同时支持swf格视频播放的类型. 以下是页面嵌入代码: <link rel="st ...
- poj 2001 Shortest Prefixes(特里)
主题链接:http://poj.org/problem?id=2001 Description A prefix of a string is a substring starting at the ...
- android 如何将电话簿SDN数字和其他普通的数字混合在一起?
最初的设计将默认SDN单独分出来,副标题"SDN". 下面的变化可以通过例如实现SDN并安排普通相同数量在一起,按字母顺序排列. DefaultContactListAdapter ...
- T-SQL技巧收集——拆分字符串
原文:T-SQL技巧收集--拆分字符串 在开发中,很多时候都需要处理拆分字符串的操作.下面收集了几种方法供大家分享,其中的逗号可以改为多种有需要的符号,但是不能针对多种符号同时存在的例子.有待各位补充 ...
- sun.misc.BASE64Encoder我找不到jar一揽子解决方案
1.合适的项目 --> 属性(Properties) --> java bulid path --> Libraries -> jre System Library(点加号在前 ...
- 中介模式和学习日记Effective C++
中介模式(Mediator):利用中介对象来封装一组对象交互.中保使对象并不需要显式地相互引用,使得松耦合,的交互. (1).中介者模式非常easy在系统中应用,也非常easy在系统中误用.当系统出现 ...