Swift
1,Swift支持所有C和Objective-C的基本类型,支持面向过程和面向对象的编程机制。
2,Swift提供了两种功能强劲的集合类型:数组和字典。
3,元组。
4,可选类型。
5,Swift是一种类型安全的语言。
6,Swift是编程语言,Xcode提供了swiftc编译器来编译Swift程序.

playgound
1,playgound提供了及时查看功能。
2,不支持人机交互。
3,暂时不支持管理多个Swift源程序。
4,playgound不是模拟器,因此不能执行APP。
playgound只是方便开发者快速体验Swift语法和测试API功能。

数据类型

  基本数据类型:Int,Double,Float,Bool,String,array 数组,Dictionary 字典

1,变量与常量。
变量用var声明, 常量用let声明。常量和变量的命名支持中文和表情字符
什么变量的方式:

类型标注 var Who:String  将变量Who定义为String类型
var age:Int //声明时指定其类型,但没有赋值。
var name:String ="Swift" //声明并指定类型同时赋值
var a=20,b:String,c="Swift"
println("her name is \(name)"); // "\(name)" 这种形式作为占位符

var str:String() //初始化字符串实例

字符串链接:
var str="hello"
str="\(str)adfadf\(100)"

2,整形与浮点型。
Int:
用Int即可。
整形之间必须是显式转换,类型转换 swift中只支持显示转换
Float,Double:
0.0可以作为除数,结果有正无限大和负无限大。
类型别名:
typealias Age=UInt16
let myAge:Age=10
3,元组类型。
1,var score=(140,140,"优秀")

2,var health:(Int,Int,String)
health=(182,78,"良好")
println("health 元组的值为:\(health)")
println("health 元组中第二个值为:\(health.1)") //根据下标来输出元素的值

3,var test:(Int,(Int,String)) //元组中可以声明元组
test=(10,(100,"Swift"))
println("test 元组中第二个元素的第一个元素为:\(test.1.0)")

4,var score:(math:140,English:140,Assessment:"A")
或者
var score:(math:Int,English:Int,Assessment:String)
score=(math:140,English:140,Assessment:"A")
println("score 中math为\(score.math)")

元组分解:
let people=(19,"xiaoming")
let (age,name)=people
//分解的时候要忽略的部分用_表示
let (age,_)=people

4,可选类型。

可选类型如果没有值的话,将自动至为为nil
//任何已知类型后面紧着"?"即可代表 可选类型 如 Int? 主要用来表示值缺失的情况
var Str="hello word"
var num:Int?=str.toInt() //可将String转换为Int 但num的值为nil即值缺失

强制解析:在变量或者常量后面添加"!"
注意:必须可选类型的变量或者常量确实有值的时候才能解析成功
var num1:Int?=10
var num2:Int?=20
if num1!=nil && num2!=nil{
let sum=num1!+num2!
}

可选绑定:可以用在IF或者WHILE语句中来对可选类型的值进行判断并把值付给一个常量或者变量
var str:String!="Swift"
if var tmp=str{
println()
}else{
println("str 的值为nil 不能解析")
}

//隐式解析可选类型:在已有类型后面添加! 如Int!适用于被赋值之后不会重新变为nil的变量
var possobleStr:String!="score"

5,数组:

food.append("v":"a") //z 使用append方法添加新的数据项
food[0...2]=["ss","nn"] //根据下标替换
food.insert("m",atIndex:0) //根据下标插入
使用removeAtIndex方法来移除数组中的某一项
把数组中的最后一项移除,可以使用removeLast方法
使用构造语法来穿件一个由特定数据类型构成的数组
var someIn=[Int]()
可以创建特定大小并且所有数据都被默认的构造方法 浮点型,3个
var b=[Double](count:3,repeatedValue:0.0)

字典:
字典元素是无序的,通过常量或者变量来决定字典(数组)是否可变。
Swift的字典使用时需要具体规定可以存储键和值类型,必须提前定义清楚,方法是通过显性类型标注或者类型推断。
声明字典:
var dic=Dictionary<Int,String>()
dic[16]="年龄" //根据键值对赋值
dic=[:] //声明一个空字典

var person=["age":18,
"name":"Jack"
];
updateValue(forkey:)方法在这个键不存在对应值的时候设置值或者在存在值是更新已存在的值,和下标方法不一样,这个方法返回更新值之前的原值,这样方便检查是否更新。
if let oldName=person.updateValue("Tom",forkey:"name"){
print("原来的值\(oldName)");
}
removeValueForKey方法可以用来在字典中移除键值对
每一个字典中的数据项都由(Key,Value)元组形式返回,并且我们可以使用临时常量或者变量来分解这些元组
for(key,value) in person{
print("\(key):\(value)")
}

囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧

Swift 基本数据类型的更多相关文章

  1. swift基本数据类型的使用

    // // ViewController.swift // 基本数据类型 // // Created by 叶炯 on 16/9/8. // Copyright © 2016年 叶炯. All rig ...

  2. swift基本数据类型使用

    swift基本数据类型的使用之一: 字符串的使用 swift String的使用 1.字符串的定义 1> 不可变字符串的定义 2> 可变字符串的定义 2.获取字符串的长度 3.字符串的拼接 ...

  3. swift 中数据类型那个的转换

    在swift中关于数据类型的转换,如果参数是可选类型? 那么打印或者转换的结果 会带有Optional 字样,,

  4. iOS开发零基础--Swift篇:Swift中数据类型

    Swift类型的介绍 Swift中的数据类型也有:整型/浮点型/对象类型/结构体类型等等 先了解整型和浮点型 整型 有符号 Int8 : 有符号8位整型 Int16 : 有符号16位整型 Int32 ...

  5. Swift - 基本数据类型,及常/变量声明

    2015-01-08 14:59 发布:yuhang 浏览:434 下面是Swift中基本的数据类型介绍说明: 1,变量:使用var声明 1 var str:String = "hangge ...

  6. Swift中数据类型

    Swift类型的介绍 Swift中的数据类型也有:整型/浮点型/对象类型/结构体类型等等 先了解整型和浮点型 整型 有符号 Int8 : 有符号8位整型 Int16 : 有符号16位整型 Int32 ...

  7. Swift 基本数据类型与运算符表达式

    // // main.swift // LessonSwift01 // // Created by lanouhn on 16/1/25. // Copyright © 2016年 齐彦坤. All ...

  8. swift基本数据类型使用-数组使用

    目录 数组的使用 1.数组的定义 2.对可变数组的基本操作 3.数组的遍历 4.数组的合并 5. 示例 数组的使用 1.数组的定义 1> 定义不可变数组 2> 定义可变数组 2.对可变数组 ...

  9. Swift - 复杂数据类型说明(数组,字典,结构体,枚举)

    1,数组 - Array 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 var types ...

随机推荐

  1. React 组件开发初探

    react.js 在线地址:http://slides.com/yueyao/deck/#/ COMPONENT JSX 预编译语言, 一个基于ECMAscript 的xml-link 的语法扩展,最 ...

  2. javascript模式——Prototype模式

    GoF权威的解释是,原型模式是一种通过对一个对象的克隆,创建基于这个对象的多种对象的模式. 为了实现这种原型模式,可以直接使用ECMAScript 5 中的方法Object.create.它不紧可以创 ...

  3. (转)OpenGL中位图的操作(glReadPixels,glDrawPixels和glCopyPixels应用举例)

    (一)BMP文件格式简单介绍 BMP文件是一种像素文件,它保存了一幅图象中所有的像素.这种文件格式可以保存单色位图.16色或256色索引模式像素图.24位真彩色图象,每种模式种单一像素的大小分别为1/ ...

  4. socket 通信之select

    对于socket 通信,大家很多都用的单线程通信.同时只能监听一个端口,只能响应一个服务,select的方式可以解决多个socket 被连接的问题.一次可以分配多个资源,只要一个连接便可以进行通信.在 ...

  5. 解决chrome下上传文件 返回值带 <pre style="word-wrap:break-word;white-space:prewrap;"></pre>

    解决办法:后台 response.setContentType("text/html");

  6. Android ListView滑动底部自动加载更多

    直接上代码: // lv = (ListView) findViewById(R.id.lv); // // for(int i = 0;i < 50;i++){ // ls.add(" ...

  7. Scala基础入门-4

    Scala学习——类 简单类和无参方法 class Counter { private var value = 0 // 必须初始化字段 def increment() { value += 1 } ...

  8. cURL模拟POST方法提交XML数据并解析

    php编程中会用到xml格式传送数据,这里演示下php以post形式发送xml,服务器接收,并解析xml的过程! post_xml.php源码: <?php header("Conte ...

  9. Eclipse配色插件

    1.打开Help -- Eclipse Marketplace 2.搜索Eclipse Color Theme,点击Install 3.安装完成后点击Window -- Preference -- A ...

  10. delete 指针

    #include<iostream>using namespace std;class human{public: human(){cout<<"构造";} ...