文档章节

Swift入门篇-基本类型

法斗斗
 法斗斗
发布于 2016/03/02 16:46
字数 1380
阅读 21
收藏 1

Swift入门篇-基本类型

一:元组

格式   


变量或常量关键字  元组变量 = ( 变量,变量, …)


说明: 


1: 元组变量还是一个变量,只不过表现方式和其他变量不一样


2:()括号里面可以放入N个变量组成

例子;

import Foundation


/*
A是元组变量,()里面放着 整形 和字符串


元组类型为 整形和字符串 组成
*/


var  A = (1,"swift”)//元组变量A 由 整形和字符串 组成
println(A)

运行结果

(1, swift)



mport Foundation


var B = 12  
/*
定义一个元组,元组变量为C , ()里面放 整形变量B 和字符串。


元组类型有 整形 和 字符串组成
*/


var C = (B,"Swift") //元组变量B  由 整形和字符串组成
println(C)

运行结果

(12, Swift)

 

元祖访问方式

1:匿名元组变量来访问

说明:

 1.1 匿名元组变量和定义好的元组变量参数必须一致

 1.2 需要元组中的个别值,可以使用(_)来忽略不需要的值

例子(1.1)

import Foundation




var A = (1,"Swift") //元组变量A  由 整形和字符串组成


/*


1: A 是元组变量,由整形和字符串组成
2:(B,C)是一个匿名元组变量
3:元组变量A 所对应的值,一一对应赋值给匿名变量。即B =1  C = "Swift"


注意点:
定义的匿名元组变量个数必须和定义好的元组变量值的个数相同


*/


var (B,C) = A
println("B=\(B),C=\(C)")

运行结果

B=1,C=Swift



例子 (1.2)

import Foundation


var A = (1,"Swift") //元组变量A  由 整形和字符串组成


/*


1: A 是元组变量,由整形和字符串组成
2:(_,C)是一个匿名元组变量,其中x下划线(_)代表省略变量
3:元组变量A 所对应的值,一一对应赋值给匿名变量。即 B="Swfit"


注意点:
定义的匿名元组变量个数必须和定义好的元组变量值的个数相同


*/


var (_,B) = A
println("B=\(B)")

运行结果:

B=Swift

 

2:通过索引来访问 (与数组访问相似)

import Foundation

var A = (1,"Swift") //元组变量A  由 整形和字符串组成


println(A.0)// A.0 指的是访问 元组变量中的第一个元素 即 1
println(A.1)// A.1 指的是访问 元祖变量中的第二个元素  即 ”Swift"

运行结果

1 Swift

 

3:通过key来访问

注意点:

 前提是  

1: 元组变量中变量必须因为字典来访问

2:访问方式即: 元组变量.key

import Foundation


/*
 通过key 来访问元组变量 注意点
1:对应的变量,必须为字典  key: value
2: 访问的时候,元组变量.key
*/


var  A = (frist:"Hello",second:"swift")


println( A.frist )
println( A.second )

运行结果

Hello
swift

 

二:类型转换

 1:字符串转换为整形 (toInt())

import Foundation


//字符串转换为Int 类型

var  strA =  "123"
var  value =  strA.toInt() // toInt 函数是把字符串 转换为整形

println("value=\(value)")

var strB = "12A"
var value1 = strB.toInt() //toInt 函数是把字符串 转换为整形 其中转换失败值为nil

println("value1=\(value1)")

运行结果

value=123 value1=nil

 

 

var  B =  A.toInt() 这个函数 字符串转换为整形 看一下图

其中 B 为 Int? (可选值) 可以包含整形值和nil 

复制代码
var A:Int = 10 
var A:Int? = 10  
不同点:
var  A:Int? = 10 不仅可以包含整形值,还可以包含nil
var  A:Int = 10 只能包含整形值 
复制代码

2:浮点类型转换整形 (Int())

import Foundation


var  A = 1.10


 var B = Int(A) //把浮点类型强制转换为整形


println("B=\(B)")

运行结果

B=1


3:整形转换为浮点类型 (Double())

import Foundation


var  A = 1


 var B = Double(A) //整形转换为浮点类型
var C = Float(A)


println("B=\(B) C=\(C)")

运行结果

B=1.0 C=1.0

 

条件语句用法 (if )

 第一种方法


if 布尔值  {}  


 注意点 


1: 布尔值等于true 就执行if 里面的方法
2:{} 不能省略  否则会报错


第二种方法


if  可选值   {}


注意点:


1: 可选值不等于nil  就执行if 里面的方法
2:   {} 不能省略  否则会报错




第三种方法


if let  常量值  = 可选值 {}


注意点:


1:if let  常量值  = 可选值  是把 可选值 赋给 常量值,如果常量值不为nil 就执行if 里面的方法
2:  {} 不能省略  否则会报错


例子

第一种方法(if +布尔值)

import Foundation

var A = true

// if 后面 跟bool值 为true的时候执行 if后面的{}的方法
if A {
    println("A=\(A)")
}
else{
    println("A")
}

运行结果

A=true


第二种方法  (if +可选值)

import Foundation

// -----------------------------可选值不为nil ----------------
var  A:Int? = 10


//A 的类型int?(可选类型), 如果A不为nil 就执行 if 中{} 里面的方法
if A {
    println("A=\(A)")
}
else{
    println("A=nil")
}


//---------------------------可选择为nil---------------


var B:Int? //B 为可选类型,不赋值 默认为nil  如果B 为nil就不执行 if中{} 的放法


if B {
    println("B=\(B)")
}
else {
     println("B=nil")
}

运行结果

A=10 B=nil



第三中方法 (if  let 常量名 = 可选值)

import Foundation

//--------------- if let  可选值不为nil
var  A:Int? = 10


if let B = A{ //解释 A 的值赋给 B 如果B 不为nil  执行 if {} 中方法
    
    println("B=\(B)")
}
else{
     println("B=nil")
}




//--------------- if let  可选值为nil


var  C :Int? //C 是可选值 ,不赋值 默认为nil


if let D = C { //解释 C 的值赋给 D 如果D 为nil  不执行 if {} 中方法
        println("D=\(D)")
}
else{
    println("D=nil")
}

运行结果

B=10 D=nil

 

  

 

本文转载自:

法斗斗
粉丝 23
博文 368
码字总数 17774
作品 0
杨浦
程序员
私信 提问
Swift:一天学会,三天写项目

最近V4.0框架班马上要开班,很多同学有点焦虑!问为什么?-- 不会Swift,完全没有接触过啊!内心换成一批 😨 和谐学习,不急不躁!有我Cooci在,你们怕啥!专门为大家写下这篇博客,一天快速...

Cooci_和谐学习_不急不躁
07/04
0
0
《Swift 5 实用教程》电子书

在移动开发领域,iOS 系统以优越的体验获得了很多果粉的青睐,加上 Apple 提供的完善的生态链,很多移动开发者从中获益。2014年,Apple 发布全新 Swift 语言,意图替换已经陈旧的 Objective-...

YungFan
08/17
0
0
Swift 三天上手项目,学习经验总结!

很快就是周末了,希望你读完这篇博客之后这个周末的时间请留给: Swift入门 如果你是多年的开发。恭喜你!易如反掌,几乎就跟喝水一样从过度!真的太像了,编码思维一模模一样样! 如果你是不...

iOS开发_小迷糊
07/04
0
0
从 OC 到 Swift 的快速入门与专业实践

只会介绍与 OC 有明显区别的地方,不会介绍 OC 中没有的,比如元组。当前总结也只是蜻蜓点水而已,但是有 OC 的基础,看这些已经足够。 一、数据 Swift 是类型安全的语言: Swift 必须明确数...

CoderHG
2018/08/04
0
0
使用Swift开发React Native组件(一)

使用Swift开发React Native组件(一) RN已经在圈子里流行很长一段时间了,网上相关的文章和介绍也很多,笔者很早之前也接触过一段时间,但也仅仅只是浅尝即止,这次正好有时间,所以准备深度...

黑血沸腾
2017/05/27
0
0

没有更多内容

加载失败,请刷新页面

加载更多

JavaScript设计模式——适配器模式

  适配器模式是设计模式行为型模式中的一种模式;   定义:   适配器用来解决两个已有接口之间不匹配的问题,它并不需要考虑接口是如何实现,也不用考虑将来该如何修改;适配器不需要修...

有梦想的咸鱼前端
28分钟前
3
0
Andorid SQLite数据库开发基础教程(1)

Andorid SQLite数据库开发基础教程(1) Android数据库访问方式 SQLite是Android系统默认支持的文件数据库。该数据库支持SQL语言,适合开发人员上手。本教程将讲解如何开发使用SQLite的Andro...

大学霸
31分钟前
3
0
Handler简解

Handler 这里简化一下代码 以便理解 Handler不一定要在主线程建 但如Handler handler = new Handler(); 会使用当前的Looper的, 由于要更新UI 所以最好在主线程 new Handler() { mLooper = Lo...

shzwork
53分钟前
4
0
h5获取摄像头拍照功能

完整代码展示: <!DOCTYPE html> <head> <title>HTML5 GetUserMedia Demo</title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum......

诗书易经
56分钟前
3
0
正向代理和反向代理

文章来源 运维公会:正向代理和反向代理 1、正向代理 (1)服务对象不同 正向代理服务器的服务对象是客户端,可以将客户端和代理服务器看作一个整体。 (2)配置方法不同 需要在客户端配置代...

运维团
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部