Swift学习笔记(二)——常量与变量

这篇博客将会学习到Swift中的常量Constants和变量Variable。这是学习语言的基础。其中可以看到Swift每句后面基本都是没有;分号的,如果有加;分号的习惯,也可以加上。

(1)常量声明:Swift将会使用关键字let来声明一个常量。定义常量之后不能再进行修改,否则会报错。

let maxNum = 100

maxNum = 200   //这里会报错,常量值不能进行修改;

(2)变量声明:Swift将会使用关键字var来声明一个变量,变量的值可以改变。

var minNum = 1

minNum = 2  //可以修改变量的值

(3)可以在同一行声明多个常量和变量,中间用,逗号分隔,像C语言一样。

var x=1.0,y=2.0,z=3.0

(4)Swift是一个类型安全的语言。通过var定义的变量会进行类型检查。

var maxNum = 100   //此时默认maxNum是一个整型

maxNum = "Hello"   //会报错,不能给整型赋值字符串

(5)变量也可以在声明的时候直接指定类型。如下就指定为字符串。

var myName:String

myName   = "Jack"

(6) 同时也可以在同一行声明多个指定了类型的变量。

var red,blue,green:Int

red=1

blue=2

green=3

(7)基本数据类型:Int ,Double,Float,String

其中整型其他还有Int8,Int16,Int32,在一般的编程中Int就足够了。具体区别可以参考Swift官方文档。

Double是32位的浮点数,一般可以精确到小数点后面15位;

Float是16位的浮点数,一般可以精确到小数点后面6位;

String是字符串类型,也是用“双引号”括起来的,与Java比较像。与OC要区分,前缀不需要@符号。

(8)Swift也支持使用不同进制来定义Int类型,可以使用二进制,八进制,十进制,十六进制。

let decimalInt:Int = 17//十进制表示整型,直接写数字就行
let binaryInt:Int = 0b10001//二进制表示整型,数字要以0b打头
let octalInt:Int = 0o21//八进制表示整型,数字要以0o打头
let hexadecimalInt:Int = 0x11//十六进制表示整型,数字要以0x打头

Swift中输出结果如下:表示的数字都是十进制下的17。

(9)Swift也可以使用科学计数法来表示浮点数。

let float_normal = 0.012
let float_science = 1.2e-2

输出结果如下:符合我们的预期。

(10)同样也可以在使用科学计数法的时候指定浮点数类型。

let normal:Double = 0.012
let science:Double = 1.2e-2

输出结果同上。

(11)方便的表示大数的方法,中间使用_下划线隔开。使看起来更加简洁。

let bigNumA = 100000000  //原始的表示方法

let bigNumB = 100_000_000  //外国人喜欢的表示方法

let bigNumC = 1_0000_0000   //中国人喜欢的表示方法

输出结果:符合我们的预期。

(12)当然,整型也是可以用科学计数法表示的。

let intNormal = 1000
let intScience = 1.0e3

输出结果如下:

(13)类型转换:Swift不支持不同类型的相互运算。如整型和浮点型相加会报错。

let a:Int = 3

let b:Double  = 0.1415926

let PI:Double  = a + b  //会在这里报错;

报错如下:

这里需要使用强制类型转换。第三行代码改为:

let PI:Double = Double(a) + b;

修改后结果输出如下:符合我们的预期。表示只有在相同的类型下才能进行算数运算。

(14)Swift是支持Unicode编码的,在Swift中的变量可以使用中文。

如下所示:

总结下,常量和变量这个内容也是内容较多的,我们没必要去死记硬背,在以后的项目开发中慢慢掌握就可以了。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-09-29 08:04:21

Swift学习笔记(二)——常量与变量的相关文章

Swift学习笔记(二)参数类型

关于参数类型,在以前的编程过程中,很多时间都忽视了形参与实参的区别.通过这两天的学习,算是捡回了漏掉的知识. 在swift中,参数有形参和实参之分,形参即只能在函数内部调用的参数,默认是不能修改的,如果想要修改就需要在参数前添加var声明. 但这样的声明过后,仍旧不会改变实参的值,这样就要用到inout了,传递给inout的参数类型必须是var类型的,不能是let类型或者字面类型,(字面类型是在swift中常提的一个术语,个人认为就是赋值语句,也不能修改)而且在传递过程中,要用传值符号"&

Swift学习笔记二

Swift是苹果公司开发的一门新语言,它当然具备面向对象的许多特性,现在开始介绍Swift中类和对象的语法. 对象和类 用"class"加上类名字来创建一个类,属性声明和声明常量或者变量是一样的,只是它是在类里边声明的而已.方法和函数声明也是一样的: class Shape { var numberOfSides = 0 func simpleDescription() -> String { return "A shape with \(numberOfSides)

Swift 学习笔记第一天-变量常量,及数据类型

1.定义变量 用关键字 var 比如 var i=2 2.定义常量用let 如let c=3 可见Swift 定义时不用指定类型.由编译器推断 如果想指定类型 var i:Int32=2 练习 let apples=3 var h:Int32=32 h=32 let cs="i love \(apples + h)as" cs 得结果 会发现程序报错.a could not find member ''convertfromstringInterpolationSegment"

Swift学习笔记十二:下标脚本(subscript)

下标脚本就是对一个东西通过索引,快速取值的一种语法,例如数组的a[0].这就是一个下标脚本.通过索引0来快速取值.在Swift中,我们可以对类(Class).结构体(structure)和枚举(enumeration)中自己定义下标脚本的语法 一.常规定义 class Student{ var scores:Int[] = Array(count:5,repeatedValue:0) subscript(index:Int) -> Int{ get{ return scores[index];

Go语言学习笔记(二) [变量、类型、关键字]

日期:2014年7月19日 1.Go 在语法上有着类 C 的感觉.如果你希望将两个(或更多)语句放在一行书写,它们 必须用分号分隔.一般情况下,你不需要分号. 2.Go 同其他语言不同的地方在于变量的类型在变量名的后面.例如:不是,int a,而是 a int.当定义了一个变量,它默认赋值为其类型的 null 值.这意味着,在 var a int后,a 的 值为 0.而 var s string,意味着 s 被赋值为零长度字符串,也就是 "". 3.Go语言的变量声明和赋值 在Go中使

【Swift】学习笔记(二)——基本运算符

运算符是编程中用得最多的,其包括一元,二元和三元 三种运算符.swift也和其它编程语言一样基本就那些,下面总结一下,也有它特有的运算符,比如区间运算符 1.一元运算符 =   赋值运算符,用得最多的啦,其不带任何返回值 +  加法(数字相加,也可用于字符拼接var ss = "a"+"b") -   减法 *   乘法 /   除法 % 求余(负号忽略,浮点数也可以求余) >  大于 <  小于 2.二元运算符 ++  自增(就是i = i + i的缩

Swift学习笔记(二):属性、元组

一.属性的getter和setter //设置计算型属性:其并不真正的存储值,而是每次通过其他值计算得来 var subtotal: Double { //getter:通过total.taxPct计算获得total的值 get { return total / (taxPct + 1) } //setter:更新的是相关的值(比如此处基于newSubtotal来设置total.taxPct的值) set(newSubtotal) { //... } } 二.元组 | Tuples //创建一个

swift学习笔记之二——集合

//=========================== //2014/7/21 17:27 swift集合 //=========================== swift提供了两种集合类型,arrays和dictionaryies,两种集合都是可变的,可以在集合声明后对其进行新增.删除和修改操作. 1.array 数组的定义与java数组相同,但swift的数组提供了更灵活的创建方式和操作方式. 数组创建和初始化方式: var array1: Array<T> = [val1,va

swift学习笔记(三)关于拷贝和引用

在swift提供的基本数据类型中,包括Int ,Float,Double,String,Enumeration,Structure,Dictionary都属于值拷贝类型. 闭包和函数同属引用类型 捕获则为拷贝.捕获即定义这些常量和变量的原作用域已不存在,闭包仍然可以在闭包函数体内引用和修改这些值 class属于引用类型. Array的情况稍微复杂一些,下面主要对集合类型进行分析: 一.关于Dictionary:无论何时将一个字典实例赋给一个常量,或者传递给一个函数方法时,在赋值或调用发生时,都会

Swift学习笔记(一):基础

一.常量 & 变量 //常量 let constantsTeam = 1 //变量 var variablesTeam = 2 尽可能使用常量,这样更清晰并且内存更不容易肾亏. 二.显示/隐式指定类型 //隐式 let inferredTeam = 3 //显式 let explicitTeam:Int = 4 三.字符串输出 //通过\(变量或常量名)来引用组合字符串 println("\(inferredTeam) is bigger than \(variablesTeam)!&q