Swift学习(一)
var ap = Array(count:3,repeatedValue: 16) var ad = Array(count:3,repeatedValue : 15)
var ac = ap + ad println( ac )
let emptyDic1 = [:] let emptyDic2 = Dictionary<String,Float>()
var airports = ["china":"shandong","jinan":"qingdao"] println(airports) /* //add + delete airports["china"] = "china international" println(airports)
airports["usa"] = "ny" println(airports)
//delete 1 airports["usa"] = nil println(airports)
//delete 2 airports.removeValueForKey("china") println(airports)
*/
//输出COUNT println("airports count is "+String(airports.count)) println("airports count is (airports.count)")
//bianli key for key in airports.keys { println(key) }
//bianli value for value in airports.values { println(value)
}
// 把所有的key 和value 转换成数组再输出 let allkeys = Array(airports.keys) let allvalues = Array(airports.values)
println(allkeys) println(allvalues)
//元组 let (x,y) = (1,2)
println("x is (x) and y is (y)")
//******** let http404error = (404,"not found") println(http404error)
//1 let (statusCode,statusMessage) = http404error //采用类型dictionary方式 通过key拿这个value println("statusCode is (statusCode) and statusMessage is (statusMessage)")
//2 let (justthestatuscode,_) = http404error println("justthestatuscode is (justthestatuscode)")
//3 println("status code is (http404error.0)") println("message is (http404error.1)")
let http200status = (statusCode: 200,desc:"ok") //左边是key 右边是value 赋给一个常量 println("the status code is(http200status.statusCode) and the status message is (http200status.desc)")
//可选类型 由于toint方法会失败 因此它会返回一个可选的int类型 而不同于int类型,一个可选的类型 返回的是一个int或者不存在
var serverResponseCode : Int? = 404 let possiblenumber = "123" let convertednumber: Int? = possiblenumber.toInt()
var responsecode:Int? = 404 // 要么存在 且为404 responsecode = nil // 要么不存在 可以赋值为nil表示
//可选类型的nil和oc中的nil不一样 swift的nil不可用于非可选类型 //特定类型的值不存在 任何类型的可选类型都能赋值为nil 如果代码中的变量常量需要适配值不存在的情况,务必将他声明为可选类 //3.如果定义的【可选类型】的不提供默认值,该对象自动设为nil 但是常量变量定义需要默认值
// var strvalue = nir 不可以false错误 var strvalue:String? //default=nil
//let hashValue = strvalue?.hashValue //方法调用 ?是否响应后面的方法 存在就响应 不存在 就不响应 就不赋值给常量 println("hashvalue is (strvalue?.hashValue)")
//解包! let possiblestring:String? = "an optional string" println(possiblestring!) //解包 我确定possiblestring的值确定存在
let stringValue = possiblestring!.hashValue //哈希值:hashvalue 必须解包 才能获取可选量的值 //or println(possiblestring!.hashValue) println(stringValue)
//optional binding =上一行 好麻烦。。 if let svalue = possiblestring{ let stringvalue = svalue.hashValue }
//隐式解包 后面用的时候不用加感叹号了!直接在定义的时候加感叹号
let assumestring : String! = "an lalalala" println(assumestring) println(assumestring.hashValue) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 正则表达式 – 等于波形符号运算符在bash 4中不起作用
- Flex+Java+Oracle详细配置说明,Flex访问Oracle数据库
- ruby-on-rails – ApplicationController中具有params值的类
- ruby-on-rails – 如何在Rails 2.0 / ruby?? 1.8.6中的字符
- ruby-on-rails-3 – 使用Active Merchant从Authorize.net获
- ajax 跨域 jsonp 处理
- c# – 替代FolderBrowserDialog
- C# 文件操作函数 创建文件 判断存在
- oc 和 swift混编之自建桥接文件
- 归一化 – {a,b,c,d,e} a,b-> c,a,b-> d和d-> e