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学习.总结,将重要的内容提取,加以理解后整理为学习笔记,方便以后查询 ...
随机推荐
- Android基础总结(八)Service
服务两种启动方式(掌握) startService 开始服务,会使进程变成为服务进程 启动服务的activity和服务不再有一毛钱关系 bindService 绑定服务不会使进程变成服务进程 绑定服务 ...
- 浅谈Facebook的服务器架构(组图)
导读:毫无疑问,作为全球最领先的社交网络,Facebook的高性能集群系统承担了海量数据的处理,它的服务器架构一直为业界众人所关注.CSDN博主yanghehong在他自己最新的一篇博客< Fa ...
- python3制作捧腹网段子页爬虫
0x01 春节闲着没事(是有多闲),就写了个简单的程序,来爬点笑话看,顺带记录下写程序的过程.第一次接触爬虫是看了这么一个帖子,一个逗逼,爬取煎蛋网上妹子的照片,简直不要太方便.于是乎就自己照猫画虎, ...
- 第二百六十三节,Tornado框架-基于正则的动态路由映射
Tornado框架-基于正则的动态路由映射 1.在路由映射条件里用正则匹配访问路径后缀2.给每一个正则匹配规则(?P<设置名称>)设置一个名称,3.在逻辑处理的get()方法或post() ...
- Lifecycle for overriding binding, validation, etc,易于同其它View框架(Tiles等)无缝集成,采用IOC便于测试。
Lifecycle for overriding binding, validation, etc,易于同其它View框架(Tiles等)无缝集成,采用IOC便于测试. 它是一个典型的教科书式的mvc ...
- 游戏开发之coco2dx ---2d 游戏特效
http://www.cnblogs.com/gamedes/p/4547722.html
- js获取url中指定参数的值(含带hash)
function getUrlVars() { var vars = {}; var parts = window.location.href.replace(/[?&]+([^=&] ...
- Oracle Data Provider for .NET的使用(三)-ORACLE与.NET类型对应关系
想来这个是最重要的事情了,因为多数情况下,我们使用dbhelper来调用数据库的时候,是因为如下三个地方导致错误: 1.错误的sql语句:末尾多了分号,少了部分关键字 2.sql中的参数与parame ...
- 【NLP】新词发现
http://www.csdn.net/article/2013-05-08/2815186 http://blog.csdn.net/yuyu2223/article/details/7725705 ...
- Laravel5.1 表单验证
当我们提交表单时 通常会对提交过来的数据进行一些验证.Laravel在Controller类中使用了一个traint:ValidatesRequest.方便我们在控制器中使用验证器. 下面我们就来看一 ...