Swift开发基础01-语法
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()
常量和变量在初始化之前,都不能使用
标识符
标识符(比如常量名、变量名、函数名) 几乎可以使用任何字符
标识符不能以数字开头,不能包含空白字符、制表符、箭头灯特殊字符
常见的数据类型
常见数据类型 |
|||||||||
|
整数类型: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-语法的更多相关文章
- Swift开发之 (01) 语法
一 Swift Swift,苹果于2014年WWDC(苹果开发者大会)发布的新开发语言,可与Objective-C*共同运行于Mac OS和iOS平台,用于搭建基于苹果平台的应用程序. Swift是一 ...
- Swift开发学习-01 Swift介绍
本教程是笔者在自学IOS/Swift知识的总结,适用于通过对Objictive C编程的运用并需要了解基于iOS程序的iPhone和iPad的程序员.做一个有bigger的’攻城狮‘,有尊严的工作,快 ...
- python开发基础之语法基础
一.知识点 (一)python介绍 1.Python被设计成一种高可读性的语言,它大量地使用了英语单词作为关键字,不像其他语言使用标点符号构成复杂的语法结构. 2.Pyton是支持面向对象的,支持在对 ...
- Python运维开发基础01-语法基础【转】
开篇导语 整个Python运维开发教学采用的是最新的3.5.2版,当遇到2.x和3.x版本的不同点时,会采取演示的方式,让同学们了解. 教学预计分为四大部分,Python开发基础,Python开发进阶 ...
- Python运维开发基础01-语法基础
标签(空格分隔): Mr.chen之Python3.0执教笔记(QQ:215379068) --仅供北大青鸟内部学习交流使用 开发不是看出来的,开发一定是练出来的: 想学好开发,没有捷径可走,只有不断 ...
- swift开发多线程篇 - 多线程基础
swift开发多线程篇 - 多线程基础 iOS 的三种多线程技术 (1)NSThread 使用NSThread对象建立一个线程非常方便 但是!要使用NSThread管理多个线程非常困难,不推荐使用 ...
- Python自动化 【第七篇】:Python基础-面向对象高级语法、异常处理、Scoket开发基础
本节内容: 1. 面向对象高级语法部分 1.1 静态方法.类方法.属性方法 1.2 类的特殊方法 1.3 反射 2. 异常处理 3. Socket开发基础 1. ...
- iOS开发Swift篇(01) 变量&常量&元组
iOS开发Swift篇(01) 变量&常量&元组 说明: 1)终于要写一写swift了.其实早在14年就已经写了swift的部分博客,无奈时过境迁,此时早已不同往昔了.另外,对于14年 ...
- Swift开发语法
Swift开发入门 简介 Swift 语言由苹果公司在 2014 年推出,用来撰写 OS X 和 iOS 应用程序 2014 年,在 Apple WWDC 发布 历史 2010 年 7 月,苹果开发者 ...
- Swift 开发语法
文/Tuberose(简书作者)原文链接:http://www.jianshu.com/p/5e2d4c34f18e著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”. 简介 Swift 语 ...
随机推荐
- MySQL之横纵表转换
sql行列转换(纵表和横表间的转换) 纵表 横表 纵转横 需要的知识点: group by,姓名有重复,使用这个按姓名进行分组 case...when...then...else...end 相当于s ...
- dbeaver使用详解
1.dbeaver使用本地驱动 解压 点击可执行文件 驱动管理 新建驱动 起名字 com.mysql.jdbc.Driver jdbc:mysql//{host}[:{port}]/[{databas ...
- webapi中间件没有使用终结点中间件时的注意事项
最小webapi 最小webapi默认的中间件配置是这样的 app.UseHttpsRedirection(); app.UseAuthorization(); app.MapControllers( ...
- kubernets之init容器作用
一 init容器的作用 1.1 init容器是在pod的生命周期,保证该pod运行的一些前置条件满足之后才开始运行这个pod,例如需要依赖一些其他的pod,服务等,可以去对这些服务的状态进行检测, ...
- 用【Makefile】或【Cmake】编译【C/Fortran】程序文件
一.vimrc文件设置 set tabstop=4 "tab空格4 set expandtab "将tab扩展成空格 set softtabstop=4 "表示在编辑模式 ...
- Java21 GA新特性-虚拟线程详解
本文转载至:虚拟线程 - VirtualThread源码透视 - throwable - 博客园 (cnblogs.com) 一. 前提 JDK19于2022-09-20发布GA版本,该版本提供了虚拟 ...
- FFmpeg下载编译、代码结构以及编译系统
从这里开始,就要踏上学习FFmpeg的旅程了,使用的FFmpeg版本5.0.1 1.ubuntu下,如何下载并编译FFmpeg源码 打开FFmpeg官网 Download FFmpeg,我们可以通过g ...
- Linux内核Kernel启动过程
在上一篇计算机启动过程文章中介绍了计算机启动的基本流程,本篇文章主要介绍Linux内核Kernel的启动过程. 一.内核启动的基本流程 sequenceDiagram participant Boot ...
- Swift Lazy计算属性的线程安全分析
一.代码示例 // // ViewController.swift // LazyTest // // Created by lilun.ios on 2021/7/30. // import UIK ...
- openstack考试需要的部署操作
openstack操作大全 一,keystone 用户 1.创建用户 openstack user create --password 密码 --email邮箱 --domain 域名 用户名字 2. ...