swift小结 1

swift小结 1

变量命名规则及值类型说明

C/C++:

  1. 字母、数字、下划线
  2. 必须以字母、下划线开头
  3. 不能与关键字重名
  4. 一般需要容易识别

swift可以用UTF-8

var 学生 = "zhangsan" //String
var 🐂 = "Cow"
print(🐂, 学生)  //输出:Cow zhangsan

值类型自动推导

Swift会根据变量或常量的初始值决定类型

var dVal = 23.4 //dVal是Double类型

显式说明类型

var iVal: Int = 23
let conVal: Double = 34.0

类型转换

iVal = Int(conVal)

Swift的字符串可以相加,就是字符串连接

var s: String = "iVal = " + String(iVal)
s = "iVal = \(iVal) \(conVal)" //插值
print(s)

数组、字典

数组可以容纳多个同一类型的值,可以通过下标取值;字典是键值对,通过key取值;数组和字典都是值类型

数组

//1. 使用var定义的数组为可变数组
var arr02: [String] = ["2", "3", "4"]
var arr03: Array<Int> = Array<Int>()

print(arr03)
arr03.append(12)  //在数组末尾添加元素
print(arr03[0])  //下标从0开始

var arr04 = arr03  //数组是值类型,赋值时发生复制,变成两个独立的空间
arr03[0] = 67
print(arr03)
print(arr04)

arr03 = arr03 + arr04 //数组加法是将两个数组合成一个(直接将arr04的元素有序插入arr03后面)

print(arr03)

arr03 = arr03.sort(>)
print("---", arr03)

//[67, 45]
arr03.insert(89, atIndex: 0) //在指定位置插入值
print(arr03.count, arr03)

arr03.removeAtIndex(0) //删除指定位置的值
print(arr03.first, arr03.last)
arr03.removeFirst()
print(arr03)
arr03.removeLast()
arr03.removeAll()

字典

//key:value, key是唯一的
var dict01 = ["班长":12,
              "小兵":34,
              "key3":45]
print(dict01["key3"])
dict01["key3"] = 45 //如果key存在,修改元素的值
print(dict01)

var dict02: Dictionary<String, Int> = Dictionary<String, Int>()
dict02["key4"] = 56  //如果key不存在,增加元素
print(dict02)

var dict03: [Int:Int] = [Int:Int]()
dict03[0] = 23
dict03[1] = 45
print(dict03.count)

类与结构体

类是引用类型,结构体是值类型。

struct Animal {
    var name: String
    var weight: Double
}

class AnimalClass {
    var name: String = "Cat"
    var weight: Double = 12.0
}

var ani01 = Animal(name: "Cat", weight: 12.0)
var ani02 = ani01  //ani01、ani02是值类型,空间直接复制

print(ani01.name, ani02.name)

ani01.name = "Kitty"
print(ani01.name, ani02.name) //ani01.name: Cat ani02.name: Kitty

var ani03 = AnimalClass(name: "Cat", weight: 12.0)
var ani04 = ani03 //ani01、ani02是引用类型,共用值空间

print(ani03.name, ani04.name)

ani01.name = "Kitty"
print(ani03.name, ani04.name) //ani03.name: Kitty ani04.name: Kitty

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 162,825评论 4 377
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 68,887评论 2 308
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 112,425评论 0 255
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,801评论 0 224
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 53,252评论 3 299
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 41,089评论 1 226
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 32,216评论 2 322
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 31,005评论 0 215
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,747评论 1 250
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,883评论 2 255
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,354评论 1 265
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,694评论 3 265
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,406评论 3 246
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,222评论 0 9
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,996评论 0 201
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 36,242评论 2 287
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 36,017评论 2 281

推荐阅读更多精彩内容