Swift学习笔记_变量和常量

1 标识符

给程序中的变量、常量、函数、结构体、类、枚举、方法、协议等命名的名字

可使用任意的字符作为命名标识符,但有如下的命名规则:

(1)区分大小写

(2)不能以数字开头,但可在其他地方包含数字

(3)不能包含空格、数学符号、箭头、保留或非法的Unicode码位、连线与制表符

(4)不能是关键字,但可以使用反引号(`)将关键字包围的方式将其作为名字使用,

应当避免使用关键字作为标识符

var tmpInt = 1
var tmpint = 2
var tmpString = "Hello World!"
var tmpstring = "Hi World!"

//var 5tmpInt = 2 //error
var tmp5Int = 3

//var var = 8  //error
var `var` = 8
print(`var`) //8\n

//var tmp string = "abc" //error
//var tmp; string = "abc" //error
//var tmp, string = "abc" //error
var tmp:Int, string = "abc"

//var tmp-Value = 10 //error
//var tmp+Value = 20 //error
var tmpValue = 10
var _tmpValue = 20
var 苹果 = ""
var  = "草莓"

2 注释

注释分为两种注释形式:

(1)单行注释

以双正斜杠(//)作为起始标记

// 这是单行注释

(2)多行注释

起始标记为单个正斜杠后跟一个型号(/*),终止标记为一个星号后跟单个正斜杠(*/)

/* 这是一个多行注释的第一行

第二行

第三行 */

多行注释可以嵌套在其它的多行注释中

/* 这是一个多行注释的第一行

第二行

/* 这是一个被嵌套的注释 */

//这是一个单行注释

第三行 */

//这是一个单行注释

/*这是一个多行注释的第一行
 第二行
 第三行
 */

/*这是一个多行注释的第一行
 第二行
 /* 这是一个被嵌套的注释 */
 //这是一个单行注释
 第三行
 */

3 分号

不强制要求在每条语句的结尾处使用分号(;),也可按自己的习惯添加分号。

在同一行内写多条独立语句的时候,必须使用分号。

var tmpVal = 10;
//var tmpVal2 = 20 print(tmpVal) //error
var tmpval2 = 20; print(tmpVal)

4 变量和常量

变量和常量在使用前必须先声明并初始化。

声明:给变量和常量起一个名字,并指定一个明确的数据类型,即说明要存储的值的类型

初始化:给变量和常量赋予一个初始值

(1)变量

使用关键字var声明变量,语法格式:var 变量名: 数据类型[ = 初始值]

(2)常量

使用关键字let声明变量,语法格式:let 常量名: 数据类型[ = 初始值]

变量保存的数据可以发生多次改变;常量一旦保存某个数据后,就不能发生改变。

可在一行中声明多个常量或变量,用逗号隔开。既可以是相同的数据类型的,也可是不同数据类型的。

如果在声明变量或常量时赋予了初始值,可无须显式的指定变量或常量的数据类型,

Swift会根据初始值进行类型推断,得出变量或常量的数据类型。

//age = 30 //error
var age:Int=30
age = 35

var name = "Tom" //String

//var sex // Type annotation missing in pattern
var sex:Bool
sex = true

let constantval:Int = 30
//constantval = 40 // error

let constantval2 = "abc" //String
//let constantval3 //error
let constantval3 : String
constantval3="test"

var val1 = 1, val2 = 2 , val3 = 3
var a1, a2, a3:Int
var a11, a12:Int, a13:String
//a1 = "test" //error Cannot assign value of String to type Int
var b1:Int, b2:Bool, b3:String
var c1:Int = 10, c2 = 30, c3:String = "test"
var d1 = 10, d2 = 20, d3 = "test"
时间: 2024-12-17 00:31:22

Swift学习笔记_变量和常量的相关文章

Swift学习笔记_数据类型_浮点类型

浮点类型 是有小数部分的数字.表示的范围比整数类型更大,可存储比Int类型更大或更小的数字. 提供了3种表示形式: (1)Float 表示32位浮点数,可精确到小数点后6位. (2)Double 表示64位浮点数,可精确到小数点后15位. (3)Float80 表示80位浮点数,可精确到小数点后17位. ※Float32和Float64分别是Float和Double的类型别名 var floatv:Float = 0.12345678912345  //0.1234568 var floatv2

Swift学习笔记_数据类型_整数类型

1 整数类型 整数就是没有小数部分的数字. 整数类型分为两种: (1)有符号整数类型:表示负整数.零.和正整数 (2)无符号整数类型:表示零.和正整数 有符号整数类型有5种表示方式: (1)Int8:在内存中占8位,表示的范围是:-128-127 (2)Int16:在内存中占16位,表示的范围是:-32768-32767 (3)Int32:在内存中占32位,表示的范围是:-2147483648-2147483647 (4)Int64:在内存中占64位,表示的范围是:-92233720368547

swift学习笔记(变量、数组和字典)

变量 (1)let 声明常量,var 声明变量,常量只能赋值一次. (2)常量和变量在声明的同时赋值,编译器会自动推断类型. (3)在声明时即不赋值也不指定类型,编译会出错,即不能声明类型不确定的变量. (4)swift的变量是强类型的,变量的类型确定以后,就不能在赋值其他类型数据给变量. (5)变量在声明的时候(显示指定类型的声明方式)在类型后面加一个?来标记这个变量的值是可选的,默认值为nil. (6)变量在没有初始化前使用编译错误,除非标记为缺省值 (7)不能将nil直接赋值给变量,标记为

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

这篇博客将会学习到Swift中的常量Constants和变量Variable.这是学习语言的基础.其中可以看到Swift每句后面基本都是没有:分号的,如果有加:分号的习惯,也可以加上. (1)常量声明:Swift将会使用关键字let来声明一个常量.定义常量之后不能再进行修改,否则会报错. let maxNum = 100 maxNum = 200   //这里会报错,常量值不能进行修改: (2)变量声明:Swift将会使用关键字var来声明一个变量,变量的值可以改变. var minNum =

Swift学习笔记_数据类型_布尔类型

布尔类型 指逻辑上的,只能是真或者假.用Bool表示. 有两个布尔常量:true和false. 主要用于条件判断语句中, 如在需要使用Bool类型的地方使用了非布尔值,swift的类型安全机制会报错. var boolvalue1 = true var boolvalue2 = false var isFinished = true //type bool if isFinished {     print("Finished!") } else {     print("n

02.第二章_C++ Primer学习笔记_变量和基本类型

2.1  基本内置类型 2.1.1  算术类型 算术类型包括两类:整型和浮点型 2.2  变量 2.3  复合类型 2.4  const限定符 2.5  处理类型 2.6  自定义数据结构

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

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

Swift学习笔记五:循环和条件语句

一.循环语句 1. for循环 1) for -in 循环,对于数据范围,序列,集合等中的每一个元素,都执行一次 for a in 0...5{}    //循环迭代,从a=0到a=5,执行{}里的代码 注意:a只循环中存在,也就是出了{}a就不存在了 或者遍历数组 let a = [1,2,3] for b in a{} //循环迭代,从b=1到b=3 如果你不需要序列中的每一个值,可以使用_来忽略它,仅仅只是使用循环体本身: for _ in 0...5{}    //循环执行{}里的代码,

SWIFT学习笔记05

1.Swift 无需写break,所以不会发生这种贯穿(fallthrough)的情况.2.//用不到变量名,可用"_"替换 for _ in 1...power { answer *= base } 3.case 可以匹配更多的类型模式,包括区间匹配(range matching),元组(tuple)和特定类型的描述. 可以这样用case case 1...3: naturalCount = "a few" 4.如果存在多个匹配,那么只会执行第一个被匹配到的 ca