经过不断的努力,小哥也买了台苹果设备,终于可以开始我的IOS之旅了,说来确实令人苦恼,为了学习IOS我这着贫农阶级,省了几个月的零花钱,外加向亲朋好友求救,最终痛下心扉,卖了台MAC pro128G版。苦逼的事情就不在多说,下面聊一聊,初次使用的心得体会,IOS的做工确实没说的,铝合金的机身,看上去就很显身份,用起来确实流畅,而且附带了很多有趣的应用,其中最让我惊奇的是段视频制作软件,提供了很多模板,让我制作小视频方便了很多。其次就是它的多手指操作了,炫酷的很,不过初次拿到本本时,确实很头疼,不想win那样只要会点就行了,总的来说,用着就是爽。闲话不多说,下面开始我们的Swfit语言学习。
我们都知道,苹果公司最早使用Object-C来开发苹果应用,现在苹果公司对Object-C进行改进,退出了Swfit语言,我相信在不久的将来Swfit必定取代Object-C成为IOS开发主流语言,废话不多说,下面开始我们的Swfit之旅。
首先说明一下我使用的Xcode的版本,我使用的是Xcode7.0版本,相对6.0语法上应该是有一定的调整,大家知晓。
1、创建工作空间
打开我们的Xcode,然后点击左上角File->new->workspace:
2、创建Swfit应用
这里为了方便,我们以创建os etc项目来做入门学习。创建我们的应用时,语言一定选择Swfit,项目的目录结构:
3、Hello word:
import Foundation print("Hello, World!") print("Hello, Swift!") print("Hello, IOS!") print("/(2015)年/(10)月/(17)日")
4、Swfit变量与常量
var a = 1 var b = 1 var c = a + b print("c=/(c)") let d = 2 //d = d + 1//常量不能改变 print("d=/(d)")
5、Swfit的数据类型
var a = "Hello, "//全自动的类型推断 var b:String = "Hello, "//指定变量的类型 print("a=/(a)") print("b=/(b)") var c:Int = 100 print("c=/(c)")
6、Swfit字符串拼接
var str = "Hello, " str = str + "word!" print(str) //str = str + 100//不允许 str = "/(str),word,/(100)" print(str) var i:Int = 100 str = "/(str)-/(i)" print(str)
7、Swfit数组
var arr = ["Hello word!","2015年10月17日",100,2.3]//定义声明数组并赋值 print(arr) var brr = []//定义一个空数组 var crr = [String]()//定义一个自能存放String类型数据的空数组 var drr = [Int]()//定义一个只能存放Int型数据的空数组
8、Swfit字典用法
/** Swfit字典用法类似于JAVA中的容器对象Map */ var dect = ["china":"中国","year":"75"]//定义字典并赋值 dect["sex"] = "Femail"//动态添加字典 print(dect) print(dect["china"])//根据key取字典中保存的Value
9、Swfit for循环用法
var arr = [String]() var brr = [String]() var crr = [String]() //闭区间 for i in 0...100{ arr.append("Item/(i)") } //左闭右开 for i in 0..<10{ brr.append("brr/(i)") } //左闭右开 for var i = 0; i < 10; i++ { crr.append("crr/(i)") } print(arr) print(brr) print(crr) //遍历数组元素 for value in brr{ print(value) } //while循环遍历数组 var i = 0; while i < crr.count{ print(crr[i]) i++ } //for循环遍历字典中的元素 var dect = ["name":"china","age":"75"] for (key,value) in dect{ print("key=/(key)") print("value=/(value)") }
10、Swfit流程控制
for i in 0...100{ if(i%2==0){ print(i) } } var a:String?=nil//可选变量 if var name=a//当可选变量为空时不执行 { print("name=/(name)") } a = "hpu" if var name=a { print("name=/(name)") }
11、Swfit中函数的用法
//函数默认没有返回值 func sayHello(name:String){ print("Hello /(name)") } sayHello("hpu") var say = sayHello//声明函数 say("ios")//赋值调用 //返回一个值 func getName()->String{ return "hpu" } var a = getName() print(a) //返回多个值 func getName()->(String,Int){ return ("hpu",106) } var (b,c) = getName() print("b=/(b),c=/(c)") //传参带返回值 func setName(name:String)->String{ return name } var name = setName("Hello HPU") print(name)
12、Swfit中面向对象设计
class SayHello{ func hi(name:String){ print("Hi /(name)") } } var say = SayHello() say.hi("hpu") //继承 class Hi:SayHello{ //继承默认实现父类方法 } var hi = Hi() hi.hi("ios") //继承 class Hello:SayHello{ //重写父类方法 override func hi(name:String) { print("Hello /(name)") } } var hello = Hello() hello.hi("ios") //初始化 class A { func AA(){ print("aa") } } class B:A { var name:String init(name:String){ self.name = name } override func AA() { print("Hello /(self.name)") } } var b = B(name: "理工大") b.AA()
到这里关于Swfit的初步学习就结束了,相信大家大概已经对IOS的Swfit语言有了一定的认识,接下来的日子让我们一起自学IOS开发吧。