【iOS】Swift数据类型、运算符、新增语句等小结

总结复习一些基本的东西,主要是与OC不同的以及新增的。

一、基本数据类型

Int、Float、Double、Bool、Character、String(首字母都大写)

Array、Dictionary、元组类型(Tuple)、可选类型(Optional)

指定数据类型:

let a:Int = 10  //指定数据类型。 一般不需要指定,会自动判断类型。 (使用时需初始化)

1.1 整形

//1.1整形
let maxInt = Int.max     //获取Int类型的最大值
let minInt = Int.min

let a1 = 10    //十进制
let a2 = 0b1010  //二进制以0b开头
let a3 = 0o12   //八进制以0o开头
let a4 = 0xA    //十六进制0x

1.2 浮点

//1.2浮点型Float,Double
let b1 = 0.123    //默认是Double
let b2 = 0.123e3  //123.0

1.3 Bool ,跟上主流了。。。。

//1.3Bool (不是YES/NO了)
let c1 = true
let c2 = false

1.4  元祖

//1.4元组. 可以是N个任意类型的数据
let tup1 = (age:1,name:"abc",hight:2,jj:0.1)  //带元素名称
let tup2 = (1,"abc",2,0.1)   //省略元素名称

var tup3:(Int,String) = (1,"haha")   //指定类型. (指定类型后就不能再写元素名称了)

var (t1,t2) = tup3   //直接弄2个变量接收元祖
var (_,t3)  = tup3   //只接收一个

二、数据的输出格式 && 类型转换 && 类型别名

简化了不少。

//2.1可以在数字中增加额外的0或_, 增强可读写
let d1 = 000123
let d2 = 00123.0012300

let d3 = 1_2_3
//let d4 = _123   //错误
//2.2类型转换
let e1 = 1
let e2 = 0.12
//let e3 = e1 + e2  //错误, 类型不同不能直接相加
let e3 = Double(e1) + e2   //类型转换

类型别名就相当于C中的typedef

//2.3 类型别名 typealias
typealias XNInt = Int
let test:XNInt = 10

三、新加的几个运算符

3.1 范围运算符,上篇WWDC上用过

//3.1 范围运算符..<   ...
for index1 in 1...10{ }  //表示闭包[1 10]
for index2 in 1..<10{ }  //表示半闭合[1 10)

3.2 溢出运算符。(新增加的,可用来处理数据溢出的情况)

&+溢出加 &-溢出减 &*溢出乘 &/溢出除 &%溢出余

let f1 = UInt.max
//let f2 = x + 1  //这样写会上溢
let f2 = f1 &+ 1   //溢出加. 值为0. 变为溢出后的最小值

let g1 = 10
//let g2 = g1 / 0  //会报错
let g2 = g1 &/ 0   //值为0
//let g3 = g1 % 0  //会报错
let g3 = g1 &% 0   //值为0

3.3 一些注意的地方

非0即真这种C语言的东西遭淘汰!赋值更加灵活,且赋值没有返回值。

let (x,y) = (1,2)    //整体赋值
//if(x = y){ }    //这样写是错误的. 能防止将==写成=
//if(10){ }     //这样写也是错误的. 非0即真已经不适用.
if(true){ }

四、流程控制语句

新增加for in语句,同时switch语句更加灵活。

4.1 循环for in

for h1 in 1...10{
    println(h1)
}

for _ in 1..<10{    //不需要用到范围中的值时,直接忽略用_
    println("####")
}

4.2 标签 (可用来跳出指定循环,了解即可)

xn:
    for _ in 1...3 {
        println("***")
        for tmp in 1...5{
            println("###")
            //指定退出
            if tmp == 3{
                break xn
            }
        }
}

4.3  Switch语句

1)与C语言中的不同. 不必每个case下写break,自动break

2)每个case后面必须有可执行语句, 否则会报错

3)每个case都可以匹配多个条件, 也可以填写一个范围

4)switch要保证处理所有的情况,一定加上default.

5)case还可以匹配元祖

let score = 10
switch score{
case 0...3:
    println("差")
case 4,5,6,7:
    println("良")
case 8...10:
    println("优")
default:
    println("超神")
}

评价:确实简化不少,写起来也挺顺手。

参考:

The Swift Programming Language  

Apple Dev Center

转载请注明出处:http://blog.csdn.net/xn4545945  

时间: 2024-08-01 10:44:48

【iOS】Swift数据类型、运算符、新增语句等小结的相关文章

Swift数据类型、运算符、新增语句等小结

总结复习一些基本的东西,主要是与OC不同的以及新增的. 一.基本数据类型 Int.Float.Double.Bool.Character.String(首字母都大写) Array.Dictionary.元组类型(Tuple).可选类型(Optional) 指定数据类型: [javascript] view plaincopy let a:Int = 10  //指定数据类型. 一般不需要指定,会自动判断类型. (使用时需初始化) 1.1 整形 [javascript] view plaincop

iOS swift运算符详解

运算符是一种特定的符号或表达式,用来检验.修改或合并变量.例如,用求和运算符+可以对两个数字进行求和(如let i = 1 + 2):稍微复杂一点的例子有逻辑与操作符&& (如if enteredDoorCode && passedRetinaScan) ,自增长运算符 ++i (这是i=i+1的简写方式) Swift支持C标准库中的大多数运算符并提升了各自的兼容性,从而可以排除常见的编码错误.赋值操作符 (=)不会返回一个值,这样可以防止你因粗心将赋值运算符 (=)写成

iOS -Swift 3.0 -for(循环语句用法)

1 // 2 // ViewController.swift 3 // Swift-循环语句 4 // 5 // Created by luorende on 16/12/08. 6 // Copyright ? 2016年 luorende. All rights reserved. 7 // 8 9 import UIKit 10 11 class ViewController: UIViewController { 12 13 override func viewDidLoad() { 1

Swift 高级运算符

除了基本操作符中所讲的运算符,Swift还有许多复杂的高级运算符,包括了C语和Objective-C中的位运算符和移位运算. 不同于C语言中的数值计算,Swift的数值计算默认是不可溢出的.溢出行为会被捕获并报告为错误.你是故意的?好吧,你可以使用Swift为你准备的另一套默认允许溢出的数值运算符,如可溢出加&+.所有允许溢出的运算符都是以&开始的. 自定义的结构,类和枚举,是否可以使用标准的运算符来定义操作?当然可以!在Swift中,你可以为你创建的所有类型定制运算符的操作. 可定制的运

4.Swift教程翻译系列——Swift基本运算符

英文版PDF下载地址http://download.csdn.net/detail/tsingheng/7480427 运算符是指一个特殊的符号,能够用来查看.更改值或者相加.比方说加法运算符+能够讲两个数字加起来. 另一些复杂的样例比方逻辑与&&或者自增++.Swift支持C中得大部分运算符,而且增加了一些增强的特性来降低代码中的错误.赋值预算符=不会返回值.这样就避免了在应该使用比較运算符==的地方误用=.数学运算符(加减乘除模)会做溢出推断,这样避免了值溢出的时候出现的奇怪现象.你能

ios swift 入门笔记

定义常量:let MAX = 3; (语句结束后,可以加分号,或者不加分号)定义变量:var max = 3:var str = "hello world":定义指定类型变量:var value:Int = 3; (此时类型已指定)输出语句:println(max);多变量输出:println("x1 = (a), x2 = (b), x3 = (c)"); swift 数据类型:整形,有符号和无符号:Int Int8 Int16 Int32UInt UInt8 U

Swift基本运算符详解

运算符是检查,改变,合并值的特殊符号或短语.例如,加号+将两个数相加(如let i = 1 + 2).复杂些的运行算例如逻辑与运算符&&(如if enteredDoorCode && passedRetinaScan),又或让 i 值加1的便捷运算符自增运算符++i等. Swift 支持大部分标准 C 语言的运算符,且改进许多特性来减少常规编码错误.如,赋值符(=)不返回值,以防止把想要判断相等运算符(==)的地方写成赋值符导致的错误.数值运算符(+,-,*,/,%等)会检

4.Swift基本运算符

英文版PDF下载地址http://download.csdn.net/detail/tsingheng/7480427 运算符是指一个特殊的符号,可以用来查看,更改值或者相加.比如说加法运算符+可以讲两个数字加起来.还有一些复杂的例子比如逻辑与&&或者自增++.Swift支持C中得大部分运算符,并且加入了一些增强的特性来减少代码中的错误.赋值预算符=不会返回值,这样就避免了在应该使用比较运算符==的地方误用=.数学运算符(加减乘除模)会做溢出判断,这样避免了值溢出的时候出现的奇怪现象.你可

ios Swift ! and ?

swift ?和!之间区别: Swift 引入的最不一样的可能就是 Optional Value 了.在声明时,我们可以通过在类型后面加一个? 来将变量声明为 Optional 的.如果不是 Optional 的变量,那么它就必须有值.而如果没有值的话,我们使用 Optional 并且将它设置为 nil 来表示没有值. //num 不是一个 Int var num: Int? //num 没有值 num = nil //nil //num 有值 num = 3 //{Some 3} Apple