二、数据类型

let age1: Int
age1 = 10

let age2: Int = 10

let age3 = 10

/*
 常量
 只能赋值一次
 它的值并不要求在编译时期确定,但使用之前必须赋值一次
 */
var num = 10
num += 20
let age4 = num

print(age4)

func getAge() -> Int {
    return 30
}
let age5 = getAge()

//常量变量在初始化之前,都不能使用
//let age : Int
//var height : Int
//print(age)
//print(height)

//常量没有确定类型就赋值是错误的
//let age6
//age6 = 10

/*
 标识符(比如常量名、变量名、函数名)命名几乎可以使用任何字符,但不能以数字开头,不能包含空白字符、制表符、箭头等特殊字符
 
 */

let 🐂 = "aa"
var 🍺 = "啤酒"
func 🐂🍺 () {
    print("666")
}
🐂🍺()

/*
 数据类型:
 值类型:枚举类型 Optional,结构体 :Bool  Int  Float Doubble Character String Array Dictionary Set
 引用类型:类
 
 32 bitp平台 Int = Int32
 64 bitp平台 Int = Int64
 */


print(UInt16.max)

//字面量
//布尔
let bool = true //false
//字符串
let string = "哥哥"
//字符(可存储ASCII、Unicode字符)
let character:Character = "够" //是字符
let Character1 = "够dds" //没写character:是字符串

//整数
let intBinary = 0b1001  //2进制
let intOctal = 0o21     //8进制
let intDecimal = 17     //10
let intHexadecimal = 0x11   //16进制

//整数和浮点数可以添加额外的零或者添加下划线来增强可读性
let a = 100_0000
let b = 1_000_000.000_000_1
let c = 000123.456

//浮点数
let doubleDecimal0 = 125.0
let doubleDecimal1 = 1.25e2 //doubleDecimal0 doubleDecimal1等价
let doubleDecimal2 = 0.0125
let doubleDecimal3 = 1.25e-2 //doubleDecimal2 doubleDecimal3等价
let doubleHexadecimal0 = 0xFp2 //15x2^2 相当于10进制的60
let doubleHexadecimal1 = 0xFp-2 //15x2^-2 相当于10进制的3.75

//数组
let array = [1, 3, 5, 7, 9]
//字典
let dictionary = ["age" : 18 , "height" : 168 , "weight" : 120]


类型转换
//整数转换
let int1: UInt16 = 2_000
let int2: UInt8 = 1
let int3 = int1 + UInt16(int2)
//整数浮点数转换
let int = 3
let double = 0.14159
let pi = Double(int) + double //为什么不可以直接相加
let intPi = Int(pi)
//字面量可以直接相加,因为数字字面量本身没有明确的类型
let result = 3 + 0.14159

//元组初始化
let error = (404, "Not Found")
print(error.0)

let (statusCode, statusMessage) = error
print(statusCode)
let (justCode, _) = error

let status = (statusCode0 : 200, des : "OK")
print(status.statusCode0)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值