Swift学习——Swift基础具体解释(一)
注:由于基础部分在Swift Tour 中已经大体的说明了,所以在具体解释中不会达到100%的原文释义
Constants and Variables 常量和变量
常量和变量都须要声明名称和类型(作为程序猿,这些基础也就不说了),常量一次赋值不能改变。变量的值能够改变
Declaring Constants and Variables 声明常量和变量
常量和变量在使用之前必须要声明,使用letkeyword定义常量。varkeyword定义变量
以下的样例能够用来定义用户登录的时候最大的尝试次数:
let maximumNumberOfLoginAttempts = 10
var currentLoginAttempt = 0
能够在一行定义多个变量或者常量。用逗号隔开:
var x = 0.0, y = 0.0, z = 0.0
Type Annotations 类型标志
类型标志(类型凝视)能够标记你定义的变量或者常量同意存储的类型。在变量/常量的名称后面放置一个冒号,然后留一个空格,然后写上类型的名称
var welcomeMessage: String
这个变量就能够存储String类型了
welcomeMessage = "Hello"
在实际编码过程中,你差点儿不须要给变量/常量类型标志。由于当你第一次赋值的时候。Swift已经知道了变量的类型。假设声明变量的时候没有赋值。那Swift才通过类型标志识别变量的类型
Naming Constants and Variables 命名变量和常量
你能够使用随意你喜欢的字符命名变量和常量,包括Unicode编码:
let π = 3.14159
let 你好 = "你好世界"
你妹的,白打了那么多了,由于粘贴一个表情,后面写的都没有了,好桑心啊
在Swift中。对于常量和变量的名称定义宽泛了很多
常量和变量命名的时候不能包括数学符号、箭头、私人定义的Unicode字符,或者用点和横线拼接的字符,也不同意以数字开头。可是数字能够在名称中的其它地方
一旦你用一种确定的类型定义了一个常量或者变量,你就不能用相同的变量名定义其它变量了,也不同意改变变量/常量的类型,变量也不能够转换成常量,常量也不能够转换成变量
假设你想使用Swiftkeyword作为变量名称,那么小伙伴仅仅能对你说(no zuo no die why you try),既然你这么坚持用的话。Swift也提供了你使用的方法,使用括号把变量名称括起来。像这样(`)
改变变量的值:
var friendlyWelcome = "Hello!"
friendlyWelcome = "Bonjour!"
// friendlyWelcome is now "Bonjour!"
常量的值不能改变,改变会报编译错误:
let languageName = "Swift"
languageName = "Swift++"
// this is a compile-time error - languageName cannot be changed
Printing Constants and Variables 打印常量和变量
能够使用println进行打印:
println(friendlyWelcome)
// prints "Bonjour!
之前用过OC的都知道啦。和NSLog一个功能。C,C++里面也有啊,并且还能够带參数的。
println和print的差别就是:都是用来控制台打印的,println打印之后换行,print打印之后不换行
也能够打印一个字符串:
println("This is a string")
// prints "This is a string
另一种方法能够将变量或者常量放到字符串中,将变量放入括号()中。在前面加上反斜杠 \ 。如 \(变量.常量)
println("The current value of friendlyWelcome is \(friendlyWelcome)")
// prints "The current value of friendlyWelcome is Bonjour!
Comments 凝视
单行凝视
// this is a comment
多行凝视
/* this is also a comment,
but written over multiple lines */
嵌套凝视:
/* this is the start of the first multiline comment
/* this is the second, nested multiline comment */
this is the end of the first multiline comment */
嵌套凝视的功能就是能够一次性凝视一大段的代码。并且不用管这段代码中间的其它凝视
Semicolons 分号
Swift代码能够不写分号。每一行是一个语句。当然写了也能够。假设一行要放两个语句,就用分号隔开
let cat = "cats"; println(cat)
// prints "cats"
Swift学习——Swift基础具体解释(一)的更多相关文章
- Swift学习——Swift解释具体的基础(六)
Optionals 可选 可选(它似乎并不如此翻译)它适用于那些值这种情况可能是空的,有两种情况一个可选:存在值并等于x,要么值不存在. 选配的概念在OC和C里面并没有.在OC中最接近的概念就是 ...
- Swift学习——Swift解释特定的基础(七)
Implicitly Unwrapped Optionals 隐式解析选项 如上所述.可选意味着常数或变量"没有值".通过可选if声明来推断是否存在值,假设有值析值. 有时候 ...
- Swift 学习- 02 -- 基础部分2
class NamedShape{ var numberOfSides: Int = 0 var name: String init(name: String) { self.name = name ...
- Swift 学习- 01 -- 基础部分
print("世界,你好") var myVariable = 42 myVariable = 50 let myConstant = 42 let implicitinteger ...
- 零基础使用Swift学习数据科学
概述 Swift正迅速成为数据科学中最强大.最有效的语言之一 Swift与Python非常相似,所以你会发现2种语言的转换非常平滑 我们将介绍Swift的基础知识,并学习如何使用该语言构建你的第一个数 ...
- 一步一步学习Swift之(二):好玩的工具playground与swfit基础语法
playground好于在于能一边写代码一边看到输出的常量变量的值.不需要运行模拟器. 我们来试一下该工具的用法. 打开xcode6开发工具,选择Get started with a playgrou ...
- swift学习笔记1——基础部分
之前学习swift时的个人笔记,根据github:the-swift-programming-language-in-chinese学习.总结,将重要的内容提取,加以理解后整理为学习笔记,方便以后查询 ...
- swift 学习(一)基础知识 (基本数据类型,操作符,流控制,集合)
xcode 中调用API帮助 1.查看简单信息,选中后 按键 control +左键单击 或者按 右侧属性栏 里的帮助按钮 2.完整API,选中后 按键 control +左键双击 3.查看类.函数 ...
- swift学习笔记4——扩展、协议
之前学习swift时的个人笔记,根据github:the-swift-programming-language-in-chinese学习.总结,将重要的内容提取,加以理解后整理为学习笔记,方便以后查询 ...
随机推荐
- C++中类所占的存储空间
#include <iostream> using namespace std; class A { int m_a; int get() { return m_a; } virtual ...
- nginx 的 autoindex on首页不显示的问题 按照下面几行要写上不然不行
[root@test html]# vim ../conf/nginx.confworker_processes 1;events { worker_connections 1024;}ht ...
- Android中如何让DialogFragment全屏
1. 在DialogFragment的oncreate里面做 @Override public void onCreate(Bundle savedInstanceState) { super.onC ...
- jenkins环境搭建&配置(二)
Jenkins介绍: Jenkins用于监控持续重复的工作,功能包括: 1.持续的软件版本发布/测试项目. 2.监控外部调用执行的工作. 安装环境: 操作系统:linux(centOS) 软件:jdk ...
- python 处理抓取网页乱码
python 处理抓取网页乱码问题一招鲜 相信用python的人一定在抓取网页时,被编码问题弄晕过一阵 前几天写了一个测试网页的小脚本,并查找是否包含指定的信息. 在html = urllib2. ...
- Ubuntu 编译安装搭配LNMP 环境
这里用Nginx1.2.0+mysql5.6.33+php5.6.2搭配安装环境 ---------------------------------------------Nginx BEGIN--- ...
- JSON.parse() 和 JSON.stringify() 的区别
JSON.parse()与JSON.stringify()的区别 JSON.parse()[从一个字符串中解析出json对象] //定义一个字符串 var data='{"name&qu ...
- win7win8 64位汇编开发环境合集安装与设置
win7win8 64位汇编开发环境合集安装与设置 下载 win7 win8 64位汇编开发环境.rar 下载地址(免积分下载) http://download.csdn.net/detail/li ...
- 在VS2013下如何配置DirectX SDK的开发环境_百度经验
jpg改rar
- std::unique_lock
/*与Mutex RAII相关,方便线程上锁,相比std::lock_guard提供了更好的上锁解锁控制,反正我是没看出来也是在构造时上锁,在析构时解锁,感觉和lock_gurad大差不差都是在线程函 ...