Swift开发基础01-语法

Hello World

1
print("Hello World")

不用编写main函数,Swift将全局范围内的首句可执行代码作为程序入口
一句代码尾部可以省略分号(;),多句代码写到同一行时必须用分号(;)隔开

用var定义变量,let定义常量,编译器能自动推断出变量\常量的类型

 

Playground可以快速预览代码效果,是学习语法的好帮手

Command + Shift + Enter:运行整个Playground 

Shift + Enter:运行截止到某一行代码

 

Playground

1、使用

1
2
3
4
let view = UIView()
view.frame = CGRect(x: 0, y: 0, width: 50, height: 50)
view.backgroundColor = UIColor.blue
PlaygroundPage.current.liveView = view

 同理这里的view可以用其他对象替换,例如image viewController 等等

2、多page

 

注释

1
2
3
4
5
6
7
8
9
10
11
// 单行注释
 
/*
 多行注释
 */
 
/*
 abc
 /* 多行嵌套注释 */
 def
 */

1、markup

Playground的注释支持markup语法(与markdown相似)

1
//:开始markup

 开启markup渲染效果:Editor -> Show  Rendered Markup

注意:Markup只在Playground中有效

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/*:
 # 一级标题
  
 ## 无序列表
 - First Item
 - Secound Item
  
 ## 有序列表
 1、First Item
 2、Secound Item
  
 ## 笔记
 > This is a note
  
 ## 图片
 ![Logo](logo.png "Local image")
  
 ## 链接
 * [链接地址](https://XXXX.com)
  
 ## 粗体/斜体
 这是**Bold**,这是*斜体*
  
 */

 

常量

只能赋值一次

它的值不要求在编译时期确定,但在使用之前必须赋值一次

1
2
3
4
5
6
7
8
9
let age = 10
let age2: Int
age2 = 20
 
func getAge() -> Int {
    return 30
}
 
let age3 = getAge()

 常量和变量在初始化之前,都不能使用

 

标识符

标识符(比如常量名、变量名、函数名) 几乎可以使用任何字符

标识符不能以数字开头,不能包含空白字符、制表符、箭头灯特殊字符

 

常见的数据类型 


常见数据类型

值类型(value type)

枚举(enum)

Optional

结构体(struct)

Bool、Int、Float、Double、Character

String、Array、Dictionary、Set

引用类型(reference type)

类(class)

 

 

 

 

 

 

 

 

 

 

 

 

整数类型:Int8、Int16、Int32、Int64、UInt8、UInt16、UInt32、UInt64n 在32bit平台,Int等价于Int32,Int等价于Int64

整数的最值:UInt8.max、Int16.min
一般情况下,都是直接使用Int即可

浮点类型:Float,32位,精度只有6位;Double,64位,精度至少15位

 

 

字面量


1
2
3
4
5
6
7
8
9
10
let bool = true // v布尔
let string = "chg" // 字符串
let character: Character = "🐶" // 字符(可存储ASCII字符、Unicode字符)
let intDecimal = 17 // 十进制
let intBinary = 0b10001 // 二进制
let intOctal = 0o21 // 八进制
let intHexadecimal = 0x11 // 十六进制
let aoubleDecimal = 125.0 // 浮点数
let array = [1,3,5,7,9]
let dictionary = ["age":18, "height":173 ,"weight":130]

 

 类型转换

 

 

元组

 

posted @   Mr.陳  阅读(33)  评论(0编辑  收藏  举报
编辑推荐:
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· NetPad:一个.NET开源、跨平台的C#编辑器
· PowerShell开发游戏 · 打蜜蜂
· 凌晨三点救火实录:Java内存泄漏的七个神坑,你至少踩过三个!
点击右上角即可分享
微信分享提示