IOS入门之Swift语言(一)

末鹿安然 提交于 2020-02-25 12:57:02

  经过不断的努力,小哥也买了台苹果设备,终于可以开始我的IOS之旅了,说来确实令人苦恼,为了学习IOS我这着贫农阶级,省了几个月的零花钱,外加向亲朋好友求救,最终痛下心扉,卖了台MAC pro128G版。苦逼的事情就不在多说,下面聊一聊,初次使用的心得体会,IOS的做工确实没说的,铝合金的机身,看上去就很显身份,用起来确实流畅,而且附带了很多有趣的应用,其中最让我惊奇的是段视频制作软件,提供了很多模板,让我制作小视频方便了很多。其次就是它的多手指操作了,炫酷的很,不过初次拿到本本时,确实很头疼,不想win那样只要会点就行了,总的来说,用着就是爽。闲话不多说,下面开始我们的Swift语言学习。

  我们都知道,苹果公司最早使用Object-C来开发苹果应用,现在苹果公司对Object-C进行改进,退出了Swift语言,我相信在不久的将来Swfit必定取代Object-C成为IOS开发主流语言,废话不多说,下面开始我们的Swift之旅。

  首先说明一下我使用的Xcode的版本,我使用的是Xcode7.0版本,相对6.0语法上应该是有一定的调整,大家知晓。

1、创建工作空间

  打开我们的Xcode,然后点击左上角File->new->workspace:

  

2、创建Swift应用

  这里为了方便,我们以创建os etc项目来做入门学习。创建我们的应用时,语言一定选择Swift,项目的目录结构:

  

3、Hello word:

import Foundation

print("Hello, World!")

print("Hello, Swift!")

print("Hello, IOS!")

print("\(2015)年\(10)月\(17)日")

4、Swift变量与常量

var a = 1
var b = 1
var c = a + b
print("c=\(c)")

let d = 2
//d = d + 1//常量不能改变
print("d=\(d)")

5、Swift的数据类型

var a = "Hello, "//全自动的类型推断
var b:String = "Hello, "//指定变量的类型
print("a=\(a)")
print("b=\(b)")

var c:Int = 100
print("c=\(c)")

6、Swift字符串拼接

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、Swift数组

var arr = ["Hello word!","2015年10月17日",100,2.3]//定义声明数组并赋值
print(arr)

var brr = []//定义一个空数组
var crr = [String]()//定义一个自能存放String类型数据的空数组
var drr = [Int]()//定义一个只能存放Int型数据的空数组

8、Swift字典用法

/**
 Swfit字典用法类似于JAVA中的容器对象Map
 */
var dect = ["china":"中国","year":"75"]//定义字典并赋值
dect["sex"] = "Femail"//动态添加字典
print(dect)
print(dect["china"])//根据key取字典中保存的Value

9、Swift 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、Swift流程控制

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、Swift中函数的用法

//函数默认没有返回值
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、Swift中面向对象设计

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()

  到这里关于Swift的初步学习就结束了,相信大家大概已经对IOS的Swfit语言有了一定的认识,接下来的日子让我们一起自学IOS开发吧。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!