Swift教程

如果你以Objective-C为基础,进行学习Swift,本教程会起到事半功倍的效果,如果你没有编程的基础,那么本教程不适合你,请节省时间
本教程也非书籍一般,按部就班的学习,而是将一些Swift需要的技能,常用的知识点介绍给大家

本教程包含知识点如下:

  1. 类型转化
  2. 变量、常量声明
  3. 循环的使用(for 、do while)
  4. switch的使用
  5. Block的用法
  6. 代理的用法
  7. 类的声明
  8. tableview
  9. collectionview
  10. swift调用oc
  11. oc调用Swift

在Swift3.0中,非2.0、2.3,特此声明

首先我新建一个Swift工程,如图:这里写图片描述

创建完毕之后,发现和Objective-C是不一样的,没有.h文件,只有.swift文件,这是一个最大的区别,意味着,在swift的工程中所有自己创建的头文件都不用写了,非常非常爽如图:
这里写图片描述

1、在swift中对类型的要求特别严格,比如

        let a = 0.5
        let b = 1;
        let c = a + b;//这里会报错

这在oc中是没有任何事情的。
解决办法:


        let a = 0.5
        let b = 1;
        let c = a + (b as? Double)!;

as? Double就是让其自动转成double类型,?表示可选择的,代表不确定的 。 相反的 !代表一定,必须这个编译器会自动提示,不用纠结

2、那么 let 表示的意思是什么?请看

        let a = 0.5
        a = 1//这里会报错

let表示声明常量,解决办法:

        var a = 0.5
        a = 1

记住 var 声明变量 。 let声明常量

3、怎么声明一个UIButton,声明一个UIView等控件
解决办法:

    var perhapsInt: Int?
    let bt : UIButton! = nil
    let bt1 : UIButton? = nil
    let view1 : UIView! = nil

这时,你声明了一个变量,没有进行实例化
注意,但是如果你这样写

    let bt = UIButton()
    let view1 = UIView()

那么,这个控件已经被实例化了
4、如何声明数组?

    let array1 = Array<Int>()
    let someArray: [Int] = [1,2,3]
    let someArray2 = [1,2,3]
    let someArray1: Array<String> = []

上面这几种都可以,需要声明数组中的元素的类型
5、如何声明字典?

    var dic:Dictionary<String,String>=["三国演义":"罗贯中","水浒传":"施耐庵","红楼梦":"曹雪芹","西游记":"吴承恩"];

其实这样也是没有问题的

    var dic = ["三国演义":"罗贯中","水浒传":"施耐庵","红楼梦":"曹雪芹","西游记":"吴承恩"];

6、字符串拼接

        let s1 = "asd"
        let s2 = "fg"
        let s3 = 1
        let s4 = s1+s2+"\(s3)"

结果:asdfg1

"\()"是转义 可以直接操作变量

7、for while循环是怎样的
第一种

var someInts:[Int] = [11, 22, 33]

for item in someInts {
   println( "Value of  index is \(item)")
}

第二种

var someInts:[Int] = [11, 22, 33]

for var index = 0; index < 3; ++index {
   println( "Value of someInts[\(index)] is \(someInts[index])")
}

第三种

var index = 10

while index < 20 
{
   println( "Value of index is \(index)")
   index = index + 1
}

第四种

var index = 10

do{
   println( "Value of index is \(index)")
   index = index + 1
}while index < 20 

8、block的用法

func useBlock(successHandler:(bool)->(){    

successHandler(true)

failHandler("ll")
}
useBlock { (isFinish) in
        }

9.arcRandom用法

arc4random()%UInt32(count)
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值