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. MySQL之横纵表转换

    sql行列转换(纵表和横表间的转换) 纵表 横表 纵转横 需要的知识点: group by,姓名有重复,使用这个按姓名进行分组 case...when...then...else...end 相当于s ...

  2. dbeaver使用详解

    1.dbeaver使用本地驱动 解压 点击可执行文件 驱动管理 新建驱动 起名字 com.mysql.jdbc.Driver jdbc:mysql//{host}[:{port}]/[{databas ...

  3. webapi中间件没有使用终结点中间件时的注意事项

    最小webapi 最小webapi默认的中间件配置是这样的 app.UseHttpsRedirection(); app.UseAuthorization(); app.MapControllers( ...

  4. kubernets之init容器作用

    一  init容器的作用 1.1  init容器是在pod的生命周期,保证该pod运行的一些前置条件满足之后才开始运行这个pod,例如需要依赖一些其他的pod,服务等,可以去对这些服务的状态进行检测, ...

  5. 用【Makefile】或【Cmake】编译【C/Fortran】程序文件

    一.vimrc文件设置 set tabstop=4 "tab空格4 set expandtab "将tab扩展成空格 set softtabstop=4 "表示在编辑模式 ...

  6. Java21 GA新特性-虚拟线程详解

    本文转载至:虚拟线程 - VirtualThread源码透视 - throwable - 博客园 (cnblogs.com) 一. 前提 JDK19于2022-09-20发布GA版本,该版本提供了虚拟 ...

  7. FFmpeg下载编译、代码结构以及编译系统

    从这里开始,就要踏上学习FFmpeg的旅程了,使用的FFmpeg版本5.0.1 1.ubuntu下,如何下载并编译FFmpeg源码 打开FFmpeg官网 Download FFmpeg,我们可以通过g ...

  8. Linux内核Kernel启动过程

    在上一篇计算机启动过程文章中介绍了计算机启动的基本流程,本篇文章主要介绍Linux内核Kernel的启动过程. 一.内核启动的基本流程 sequenceDiagram participant Boot ...

  9. Swift Lazy计算属性的线程安全分析

    一.代码示例 // // ViewController.swift // LazyTest // // Created by lilun.ios on 2021/7/30. // import UIK ...

  10. openstack考试需要的部署操作

    openstack操作大全 一,keystone 用户 1.创建用户 openstack user create --password 密码 --email邮箱 --domain 域名 用户名字 2. ...