设为首页 加入收藏

TOP

Swift学习--常量.变量.数据类型的使用(一)
2017-10-10 12:16:08 】 浏览:436
Tags:Swift 学习 常量 变量 数据 类型 使用

一.Swift中的常量和变量

/*
Swift 中定义常量和变量用let/var
let 代表定义一个常量
var 代表定义一个变量
Swift 中代表定义常量和变量不需要写数据类型,编译器辉根据我们后面数据的真实类型自动推导
Swift开发技巧:在做Swift开发中,我们需要经常使用option + click键来查看方法或变量
**/

//常量
let num = 10.1
//num = 9.0  //常量不能修改

//变量
//注意点: Swift开发中每一条语句后面可以不写分号,但是写上也不会报错
//  如果同一行多条语句,那么每天语句后面必须写上分号
var value = 10
value = 11

//相当于OC中的NSLog
print(value)

 二.Swift中的数据类型

/*
Swift中不存在隐式类型转换,所有的类型转换都必须是显示的
*/
let num1 = 10
let num2 = 9.9
let iSum = num1 + Int(num2)
let dsum = Double(num1)+num2

//Swift是强语言/OC是弱语言
//let num3: Int = 10.1 //报错
let num3:Int = 10
let num4:Int = Int(10.1)

 三.Swift中的分支

/*
Swift中的if使用方式 基本上 和OC一样
1.Swift中的if可以省略()
2.Swift中哪怕if后面只有一条语句,也不能省略{}
3.在C和OC中,有一个概念非0即真
在Swift中,条件只能放bool值,去值只有两个true/false

*/
let num5 = 10
if(num5 == 10){
    print("OK")
}
if num5 == 10 {
    print("OK")
}
/*
Swift中的switch
1.后面的()可以省略
2.OC中的switch如果没有break会穿透,但是OC中不会,Swift不会穿透
3.OC中如果要再case中同定义变量,必须加上{}确定作用域,而swift中不用
4.OC中的default的位置可以随便写,只有所有case都不满足才会执行default 而swift中的default只能放在最后
5.OC中的default可以省略,Swift中"大部分"情况下不能省略
*/

switch (num5){
case 1:
    print("1")
    break
case 2:
    print("2")
    break
case 10:
    print("10")
    break
default:
    print("other")
    break
}

 

 

//Swift中的循环
/*
普通的for循环 和OC基本一致
*/
//0~9
for var i = 0; i < 10; i++
{
    print(i)
}

//Swift特色循环
//0..<10 代表一个区间范围,从0开始到9 包含头不包含尾
for i in 0..<10
{
    print(i)
}

// _ 代表忽略,如果不关心某个参数,就可以使用_
//在Swift中,  _  使用频率非常高
for _ in 0..<10
{
    print("lnj")
}

//0...10 代表一个区间范围, 从0开始到10结束 包含头又包含尾
for i in 0...10
{
    print(i)
}


/*
Swift的while循环和OC中差不多,而且在开发中很少使用while
*/
var a = 0
while a < 10
{
    print(a)
    a++
}

/*
Swift升级到2.0后, do while循环发生了极大的变化
do while 没有do了 因为do被用作捕获异常了
*/
var b = 0
repeat{
    print(b)
    b++
}while b<10

 

 

let num6 = 10
if num6 == 5
{
    print("5")
}
else
{
    print("10")
}

/*
在OC中 if else 可以使用三目运算符来简写
注意:在做Swift开发中三目运算符用得非常多
*/
let res = (num6 == 5) ? 5 : 10
print(res)

/*
可选类型:代表着可以有也可以没有 optional
convenience init?
以后单反看到一个方法或者数据类型后面有?,就代表返回的是一个可选类型


使用可选类型需要注意,如果直接打印可选类型,那么打印出来的值会被Optional包裹
! 代表告诉编译器,可选类型中一定有值,强制解析
如果可选类型中没有值,而又进行了强制解析,那么程序就会崩溃
*/
let url = NSURL(string: "http://baidu.com")
print(url)
print(url!)

let url2 = NSURL(string: "http://baidu.com/图片")
print(url2)

//Swift的用意就是让我们将大部分运行时的错误,都再编译时解决
//let request=NSURLRequest(URL:url!)
if url != nil
{
    let request = NSURLRequest(URL: url!)
}

//可选绑定
//会将url的值取出来赋值给urlFinal变量,如果值不为nil,那么就可以进入{}
if let urlfinal = url{
    let request = NSURLRequest(URL: urlfinal)
}

 

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Swift学习--常量.变量.数据类型的.. 下一篇Swift学习--闭包的简单使用(三)

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目