Hello World

print("Hello World")

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

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

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

Command + Shift + Enter:运行整个Playground

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

Playground

1、使用

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

注释

// 单行注释

/*
多行注释
*/ /*
abc
/* 多行嵌套注释 */
def
*/

1、markup

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

//:开始markup

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

注意:Markup只在Playground中有效

/*:
# 一级标题 ## 无序列表
- First Item
- Secound Item ## 有序列表
1、First Item
2、Secound Item ## 笔记
> This is a note ## 图片
![Logo](logo.png "Local image") ## 链接
* [链接地址](https://XXXX.com) ## 粗体/斜体
这是**Bold**,这是*斜体* */

常量

只能赋值一次

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

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位

字面量

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]

类型转换

元组

Swift开发基础01-语法的更多相关文章

  1. Swift开发之 (01) 语法

    一 Swift Swift,苹果于2014年WWDC(苹果开发者大会)发布的新开发语言,可与Objective-C*共同运行于Mac OS和iOS平台,用于搭建基于苹果平台的应用程序. Swift是一 ...

  2. Swift开发学习-01 Swift介绍

    本教程是笔者在自学IOS/Swift知识的总结,适用于通过对Objictive C编程的运用并需要了解基于iOS程序的iPhone和iPad的程序员.做一个有bigger的’攻城狮‘,有尊严的工作,快 ...

  3. python开发基础之语法基础

    一.知识点 (一)python介绍 1.Python被设计成一种高可读性的语言,它大量地使用了英语单词作为关键字,不像其他语言使用标点符号构成复杂的语法结构. 2.Pyton是支持面向对象的,支持在对 ...

  4. Python运维开发基础01-语法基础【转】

    开篇导语 整个Python运维开发教学采用的是最新的3.5.2版,当遇到2.x和3.x版本的不同点时,会采取演示的方式,让同学们了解. 教学预计分为四大部分,Python开发基础,Python开发进阶 ...

  5. Python运维开发基础01-语法基础

    标签(空格分隔): Mr.chen之Python3.0执教笔记(QQ:215379068) --仅供北大青鸟内部学习交流使用 开发不是看出来的,开发一定是练出来的: 想学好开发,没有捷径可走,只有不断 ...

  6. swift开发多线程篇 - 多线程基础

    swift开发多线程篇 - 多线程基础 iOS 的三种多线程技术 (1)NSThread  使用NSThread对象建立一个线程非常方便 但是!要使用NSThread管理多个线程非常困难,不推荐使用 ...

  7. Python自动化 【第七篇】:Python基础-面向对象高级语法、异常处理、Scoket开发基础

    本节内容: 1.     面向对象高级语法部分 1.1   静态方法.类方法.属性方法 1.2   类的特殊方法 1.3   反射 2.     异常处理 3.     Socket开发基础 1.   ...

  8. iOS开发Swift篇(01) 变量&常量&元组

    iOS开发Swift篇(01) 变量&常量&元组 说明: 1)终于要写一写swift了.其实早在14年就已经写了swift的部分博客,无奈时过境迁,此时早已不同往昔了.另外,对于14年 ...

  9. Swift开发语法

    Swift开发入门 简介 Swift 语言由苹果公司在 2014 年推出,用来撰写 OS X 和 iOS 应用程序 2014 年,在 Apple WWDC 发布 历史 2010 年 7 月,苹果开发者 ...

  10. Swift 开发语法

    文/Tuberose(简书作者)原文链接:http://www.jianshu.com/p/5e2d4c34f18e著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”. 简介 Swift 语 ...

随机推荐

  1. 移动通信网络中的 GTP 协议

    目录 文章目录 目录 GTP GTP-C 协议(GTP 控制面) GTP-U 协议(GTP 用户面) GTP' 协议(计费传输) GTPv2 Header GTP GTP(GPRS Tunnellin ...

  2. CentOS7 防火墙(firewall)的命令详解

    复制代码 安装:yum install firewalld 1.firewalld的基本使用 启动: systemctl start firewalld 查看状态: systemctl status ...

  3. PyQt5 GUI编程(组件使用)

    一.简介 PyQt5 是一个用于创建图形用户界面(GUI)应用程序的 Python 绑定,它基于 Qt 库.PyQt5 提供了大量的组件(也称为控件或部件),用于构建复杂的用户界面.以下是一些常用的 ...

  4. claude3国内API接口对接

    众所周知,由于地理位置原因,Claude3不对国内开放,而国内的镜像网站使用又贵的离谱! 因此,团队萌生了一个想法:为什么不创建一个一站式的平台,让用户能够通过单一的接口与多个模型交流呢?这样,用户就 ...

  5. OOP课第二阶段总结

    OOP课第二阶段总结 前言 作为第二次3+1的总结,明显感受到了此次题目集越来越复杂,结合了实际的物理知识来解决现实中的电路问题.因为电路可以一直扩展下去,情况千变万化,难以像上次题目集一样找到一个呆 ...

  6. flutter 打包web应用指定上下文

    使用flutter build web命令打包的应用不包含上下文,只能部署在根目录.如何指定上下文,部署在子目录下呢? 有两种办法: 1.修改web/index.html文件 修改 <base ...

  7. k8s网络问题以及容器跨宿主机通信原理

    [0]资源配置文件 [root@mcwk8s03 mcwtest]# ls mcwdeploy.yaml [root@mcwk8s03 mcwtest]# cat mcwdeploy.yaml api ...

  8. react类组件

    使用ES6语法的class创建的组件(有状态组件) 类名称必须要大写字母开头 类组件要继承React.Component父类,从而可以使用父类中提供的方法或者属性 类组件必须提供 render 方法, ...

  9. 微信刷脸SDK获取sub_openid

    当调用SDK中 获取用户信息(getWxpayfaceUserInfo) /人脸支付凭证(getWxpayfaceCode) 方法获取 sub_openid 时,除了SDK自身要传入sub_appid ...

  10. Json输出List集合对象和map对象 JSON格式

    Json输出List集合对象和map对象 JSON格式 //Json输出List集合对象 [{"属性1":["值1"],"属性2":&quo ...