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学习.总结,将重要的内容提取,加以理解后整理为学习笔记,方便以后查询 ...
随机推荐
- jquery filter和not
jQuery filter() 方法 filter() 方法允许您规定一个标准.不匹配这个标准的元素会被从集合中删除,匹配的元素会被返回. 下面的例子返回带有类名 "intro" ...
- 常用jar命令
JAR包是Java中所特有一种压缩文档.存储格式格式就是.zip包.但是与ZIP包不同的地方是,生成JAR包时候,会自动添加一个META-INF\MANIFEST.MF文件 命令参数jar {c t ...
- ajax——优化0126(增删改查:添加查看详情,返回结果类型为JSON型,在窗口显示)
效果: 鼠标点击查看详情时 数据库: 0126.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&qu ...
- error: icpc: Command not found
交叉编译qt的程序时,出现错误:error: icpc: Command not found. 解决方法,详情查看链接. http://www.cnblogs.com/zengjfgit/p/4744 ...
- 一个try可以跟进多个catch语句,用于处理不同情况,当一个try只能匹配一个catch
一个try可以跟进多个catch语句,用于处理不同情况.当一个try只能匹配一个catch. 我们可以写多个catch语句,但是不能将父类型的exception的位置写在子类型的excepiton之前 ...
- 【NOIP模拟题】行动!行动!(spfa+优化)
spfa不加优化果断tle最后一个点................... 这题和ch的一题很像,只不过这题简单点,这是一个层次图,即有很多个相同的图,这些相同的图之间又存在着练习.. 然后每一次队列 ...
- 学习:erlang用链表实现大容量的List或者数组。
链表的内在实质. 效率未知,待测.
- HttpModule的简单示例
1.HttpModule可用在asp.net 管线事件触发的过程中.. 可处理一些通用的操作,如给特定请求加 gzip压缩. 2.示例代码: using System; using System.We ...
- ps -ef|grep htpd|wd -l
在Linux下查看Apache的 负载情况,以前也说过,最简单有有效的方式就 是查看Apache Server Status(如何开启Apache Server Status点这里),在没有开启Apa ...
- 性能测试工具LoadRunner中进程运行和线程运行区别
loadrunner controller将使用驱动程序mmdrv运行Vuser.用户可以在controller的run-time setting中选择Vuser的运行方式, 是多进程方式or多线程方 ...