// // main.swift // Foundation // // Created by Codans on 15/11/14. // Copyright © 2015年 YLi. All rights reserved. // print("Hello,Swift!") /* 简单值 let来声明常量 只能为它赋值一次 var来声明变量 */ var snail1 = 42 snail1 = 22 let snail2 = 0 //下面这个会报错 //snail2 = 4 //上面这些编译器会自动识别类型 也可以指定其类型 let snail3 : Double = 99 //下面这是字符 let snail4 : Character = "c" //下面这个是字符串 需要转换 let snail5 = "sa" //============字符串================= let label = "My name is Snail." let button = 250 //不能直接拼接 要强转一下 let lb = label + String(button) //更直接的方式把值转换为字符串 加上反斜杠 和括号 反斜杠相当于转义 let apple = "I am a boy,I \(22) years old" print(apple) //============数组================= //一个空的存在字符串的数组、其他类型不能存 let emptyArr = [String]() var arr = ["1","2","3","4","5"] print(arr[1]) //----2 //可以修改数组中的值 arr[1] = "21" print(arr[1]) //----21 //============字典================= //空字典-----卧槽来 感觉怎么这么奇葩 let emptyDict = [String:Float]() var dict = ["1":"one","2":"two"] //!号后面看看再说 具体也没太懂 print(dict["1"]) //----one print(dict["1"]!) //----Optional("one") //修改字典 dict["1"] = "oneone" print(dict["1"]) //-----Optional("oneone") //============控制流================= /* 可以使用if和switch for-in、for、while、repeat-while来进行循环 不过语句的大括号就必须得 条件和循环变量括号可以省略 */ //if条件必须是bool表达式 不能像之前 if (score) 编译器不会跟0去作比较 let scores = [1,2,3,4,5,6,7] for score in scores{ if score > 3{ print("niubi") }else{ print("bu niu bi") } } /* 用 if和let来处理缺省值 这些值可以用可选值来代表 可选值是一个具体的值或者是nil表示 在类型后面加一个问号来标记这个变量的值是可选的 */ var optionStr : String? = "helhe" print(optionStr == nil) //----false var optionalName:String? = "WuJian" var dage = "big," if let name = optionalName{ dage = "bigkk,\(name)" }else{ dage = "dsaasd" } print(dage) //---bigkk,WuJian /* Switch 支持任意类型的数据以及各种比较操作--不仅仅是整数 运行switch中匹配的字句后,会推出switch语句 不需要写break */ let WJJ = "SB" switch WJJ{ case "red": print("red") case "blue","yellow": print("all") case let x where x.hasPrefix("S"): print("dsaassadasas") default: print("hhh") } //============for-in============ /* 这个for-in 我简直是 for-in循环中 需要两个变量(kind,numbers)来表示每个键值对 */ let numberddd = [ "2":[21,22,23,24,25],"3":[31,32,33,34,35],"4":[41,42,43,44],] for (kind,numbers) in numberddd{ for number in numbers{ print(number) } } //============while============ var n = 2 while n < 100{ n *= 2 //n = n * 2 } print(n) var b = 2 repeat { b *= 2 }while b < 100 print(b) //可以使用..< 来表示范围,传统写法也可以 //0..4 输出0,1,2,3 //0...4输出0,1,2,3,4 for i in 0..<4{ print(i) } for var i = 0;i < 4;++i{ //---为毛i++不可以???呵呵 print(i) }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。