数值型字面量 整数字面量能够被写作: 一个十进制数,没有前缀 一个二进制数,前缀是0b 一个八进制数,前缀是0o 一个十六进制数,前缀是0x 以下的全部整数字面量的十进制值都是17: let decimalInteger = 17 let binaryInteger = 0b10001 // 二进制的17 let octalInteger = 0o21 // 八进制的17 let hexadecimalInteger = 0x11 // 十六进制的17 浮点字面量能够是十进制(没有前缀)或者是十…
//: Playground - noun: a place where people can play import UIKit var str = "Hello, playground" let 十进制的10 = 10 let 八进制的8 = 0o10 let 二进制的2 = 0b10 let 十六进制的16 = 0x10 let 一百万 = 1e6 // 表示1乘以10的6次方 let 一百万分之一 = 1e-6 // 这节的东西我表示没去记, 也没去掌握...…
昨天在<js 正则学习小记之匹配字符串字面量>谈到 个字符,除了第一个 个,只有 个转义( 个字符),所以 次,只有 次成功.这 次匹配失败,需要回溯后用 [^"] 才能匹配成功,当然最后一个 " 会直接匹配成功. 很明显,正常的字符串不可能全是转义,正常的字符串才是主流,当然不排除有人故意全转义的情况.所以这个正则需要次回溯后才能匹配完成,如果字符串增长到 1K 1M 肿么破呢?所以我们要修改下这个正则,前后换下位置么?难道是 /"(?:[^"]|\\…
属性将值跟特定的类.结构或枚举关联.存储属性存储常量或变量作为实例的一部分,计算属性计算(而不是存储)一个值.计算属性能够用于类.结构体和枚举里,存储属性仅仅能用于类和结构体. 存储属性和计算属性通经常使用于特定类型的实例,可是,属性也能够直接用于类型本身,这样的属性称为类型属性. 另外,还能够定义属性监视器来监控属性值的变化,以此来触发一个自己定义的操作.属性监视器能够加入到自己写的存储属性上,也能够加入到从父类继承的属性上. 存储属性 简单来说,一个存储属性就是存储在特定类或结构体的实例里的…
Swift 是类型安全(type safe )语言.类型安全的语言可以让你清楚地知道代码被处理值类型.假设你需要一个代码String.你绝对不能进去一个不小心传球Int. 因为 Swift 它是类型安全,因此,这将是类型检查的编译代码(type checks),并把不匹配的类型标记为错误. 这能够让你在开发的时候尽早发现并修复错误. 当你要处理不同类型的值时,类型检查能够帮你避免错误. 然而.这并非说你每次声明常量和变量的时候都须要显式指定类型.假设你没有显式指定类型,Swift 会使用类型猜測…
闭包是自包括的函数代码块,能够在代码中被传递和使用. Swift 中的闭包与 C 和 Objective-C 中的代码块(blocks)以及其它一些编程语言中的 lambdas 函数比較类似.   闭包能够捕获和存储其所在上下文中随意常量和变量的引用.这就是所谓的闭合并包裹着这些常量和变量.俗称闭包.Swift 会为您管理在捕获过程中涉及到的全部内存操作.   注意:   假设您不熟悉捕获(capturing)这个概念也不用操心.您能够在值捕获 章节对其进行详细了解. 在函数章节中介绍的全局和嵌…
Swift 语言提供经典的数组和字典两种集合类型来存储集合数据.数组用来按顺序存储同样类型的数据.字典尽管无序存储同样类型数据值可是须要由独有的标识符引用和寻址(就是键值对). Swift 语言里的数组和字典中存储的数据值类型必须明白. 这意味着我们不能把不对的数据类型插入当中. 同一时候这也说明我们全然能够对获取出的值类型很自信. Swift 对显式类型集合的使用确保了我们的代码对工作所须要的类型很清楚,也让我们在开发中能够早早地找到不论什么的类型不匹配错误. 注意: Swift 的数组结构在…
有的时候,认为看英文文档有些费时,看中文文档怕翻译不准,有些地方确实不须要抠字眼.当有些地方假设翻译不精准会产生歧义,所以用这样对比的方式.顺便学习一下Swift. Swift is a new programming language for iOS and OS X apps that builds on the best of C and Objective-C, without the constraints of C compatibility. Swift adopts safe p…
控制传递语句(Control Transfer Statements) 控制转移语句改变你代码的运行顺序,通过它你能够实现代码的跳转.Swift有四种控制转移语句. continue break fallthrough return 我们将会在以下讨论continue.break和fallthrough语句.return语句将会在函数章节讨论. Continue continue语句告诉一个循环体立马停止本次循环迭代,又一次開始下次循环迭代.就好像在说"本次循环迭代我已经运行完了",可…
操作员正在检查,更改.归并值特殊符号或短语.例如,加+这两个数字相加(例如let i = 1 + 2). 算如更复杂的逻辑和操作的实施&&(例如if enteredDoorCode && passedRetinaScan),又或让 i 值加1的便捷运算符自增运算符++i等. Swift 支持大部分标准 C 语言的运算符,且改进很多特性来降低常规编码错误.如,赋值符(=)不返回值.以防止把想要推断相等运算符(==)的地方写成赋值符导致的错误. 数值运算符(+,-,*./,%等…
全局变量和局部变量 计算属性和属性监视器所描写叙述的模式也能够用于全局变量和局部变量,全局变量是在函数.方法.闭包或不论什么类型之外定义的变量,局部变量是在函数.方法或闭包内部定义的变量. 前面章节提到的全局或局部变量都属于存储型变量,跟存储属性类似,它提供特定类型的存储空间,并同意读取和写入. 另外,在全局或局部范围都能够定义计算型变量和为存储型变量定义监视器,计算型变量跟计算属性一样,返回一个计算的值而不是存储值,声明格式也全然一样. 注意: 全局的常量或变量都是延迟计算的,跟延迟存储属性相…
方法是与某些特定类型相关联的函数.类.结构体.枚举都能够定义实例方法:实例方法为给定类型的实例封装了详细的任务与功能.类.结构体.枚举也能够定义类型方法:类型方法与类型本身相关联.类型方法与 Objective-C 中的类方法(class methods)相似. 结构体和枚举可以定义方法是 Swift 与 C/Objective-C 的主要差别之中的一个.在 Objective-C 中,类是唯一能定义方法的类型.但在 Swift 中,你不仅能选择是否要定义一个类/结构体/枚举,还能灵活的在你创建…
Swift它提供了类似 C 流量控制结构语言,它包含运行多个任务的能力for和while周期.选择根据不同的编码分支机构的具体条件来运行if和switch声明,有控制流程跳转到其他代码break和continue声明. 除了 C 语言里面传统的for条件递增(for-condition-increment)循环.Swift 还添加了for-in循环.用来更简单地遍历数组(array).字典(dictionary),区间(range),字符串(string)和其它序列类型. Swift 的swit…
断言 可选能够让你推断值是否存在,你能够在代码中优雅地处理值缺失的情况.然而,在某些情况下,假设值缺失或者值并不满足特定的条件,你的代码可能并不须要继续执行.这时.你能够在你的代码中触发一个断言(assertion)来结束代码执行并通过调试来找到值缺失的原因. 使用断言进行调试 断言会在执行时推断一个逻辑条件是否为true.从字面意思来说,断言"断言"一个条件是否为真.你能够使用断言来保证在执行其它代码之前,某些重要的条件已经被满足.假设条件推断为true,代码执行会继续进行:假设条件…
常量和变量把一个名字(比方maximumNumberOfLoginAttempts或者welcomeMessage)和一个指定类型的值(比方数字10或者字符串"Hello")关联起来. 常量的值一旦设定就不能改变.而变量的值能够随意更改. 声明常量和变量 常量和变量必须在使用前声明,用let来声明常量,用var来声明变量.以下的样例展示了怎样用常量和变量来记录用户尝试登录的次数: let maximumNumberOfLoginAttempts = 10 var currentLogi…
可选值 使用可选(optionals)来处理值可能缺失的情况.可选表示: 有值,等于 x   或者没有值 注意: C 和 Objective-C 中并没有可选这个概念.最接近的是 Objective-C 中的一个特性,一个方法要不返回一个对象要不返回nil,nil表示"缺少一个合法的对象". 然而,这仅仅对对象起作用--对于结构体.主要的 C 类型或者枚举类型不起作用. 对于这些类型,Objective-C 方法通常会返回一个特殊值(比方NSNotFound)来暗示值缺失.这样的方法假…
属性监视器 属性监视器监控和响应属性值的变化,每次属性被设置值的时候都会调用属性监视器.甚至新的值和如今的值同样的时候也不例外. 能够为除了延迟存储属性之外的其它存储属性加入属性监视器,也能够通过重载属性的方式为继承的属性(包含存储属性和计算属性)加入属性监视器.属性重载请參考继承一章的重载. 注意: 不须要为无法重载的计算属性加入属性监视器,由于能够通过 setter 直接监控和响应值的变化. 能够为属性加入例如以下的一个或所有监视器: willSet在设置新的值之前调用 didSet在新的值…
今天看了第5章几个例子,有点收获,记录下来当作回顾也当作分享. 关于匹配字符串问题,有很多种类型,今天讨论 js 代码里的字符串匹配.(因为我想学完之后写个语法高亮练手,所以用js代码当作例子) var str1 = "我是字符串1哦,快把我取走", str2 = "我是字符串2哦,快把我取走"; 比如这样一个字符串,匹配起来很简单 /"[^"]*"/g 即可. PS: 白色截图是 chrome 34 控制台中运行的结果,深灰色是 su…
自从苹果宣布swift之后,我一直想了解,他一直没有能够把它的正式学习,从今天开始,我会用我的博客来驱动swift得知,据我们了解还快. 1.定义变量和常量 var  定义变量,let定义常量. 比如: var test = 1 test = 2 //变量能够改变值 let test = 1 test = 2 //常量不能改变值,编译器会报错 var test1=1,test2=2,test3=3 //逗号分隔多个变量 2.添加类型标注 在 var test = 1 这个样例中.test被swi…
1. 类型安全和类型推测 1> 类型安全 Swift 是一个 _类型安全(type safe)_ 的语言.类型安全的语言可以让你清楚地知道代码要处理的值的类型.如果你的代码需要一个`String`,你绝对不可能不小心传进去一个`Int`. 由于 Swift 是类型安全的,所以它会在编译你的代码时进行 _类型检查(type checks)_ ,并把不匹配的类型标记为错误.这可以让你在开发的时候尽早发现并修复错误. 当你要处理不同类型的值时,类型检查可以帮你避免错误.然而,这并不是说你每次声明常量和…
所谓字面量,就是指像特定的数字,字符串或者是布尔值这样,能够直接了当地指出自己的类型并为变量进行赋值的值.比如在下面: let aNumber = //整型字面量 let aString = "Hello" //字符串字面量 let aBool = true //布尔值字面量 整型字面量 整型字面量可以是一个十进制,二进制,八进制或十六进制常量. 二进制前缀为 0b,八进制前缀为 0o,十六进制前缀为 0x,十进制没有前缀: 以下为一些整型字面量的实例: let decimalInte…
关于计算机编程语言中的字面量的介绍可参考:http://baike.baidu.com/view/1208327.htm?fr=aladdin. 下面就介绍Objective-C中的各种常用字面量: #import <Foundation/Foundation.h> int main (int argc, const char * argv[]) { /** 以下为基本类型字面量举例 */ ; // 10为一个整型字面量 float f = 0.5f; // 0.5f为一个单精度浮点数字面量…
目录 目录 软件环境 Python变量调用的过程 数值型 删除一个数值类型对象 布尔型 Bool 标准整型 Int 长整型 双精度浮点型 Float 复数 数值类型对象的内建功能函数 absNumber 求Number的绝对值 coercex y 将x y转换为同一种数值类型 divmodx y 除法-取余运算的结合 pow 指数运算或将结果取余 round 浮点型的四舍五入运算和求精度 仅用于整型对象的函数 数值型相关模块推荐 软件环境 系统 CentOS 7 软件 Python 2.7.5…
Java文件的注意事项 在同一个Java文件中,可以定义多个类,但是被public修饰的类只能够有一个,并且此类名要与文件名一致. 在同一个类中,可以定义多个方法,但是名字叫做main的方法只能有一个,因为它是程序的入口.逐行执行主方法的中的代码. 备注:Java中若有多个类,则编译之后会生成多个.class文件,由此也可以看出Java是以类为单位的. Java中的注释问题 注释就是解释说明的文字 注释有两个作用 1.对于你的代码进行解释说明 2.便于后期维护 注释的分类   颜色 作用域 嵌套…
在计算机科学中,字面量(literal)是用于表达源代码中一个固定值的表示法(natation).几乎所有计算机编程语言都具有对基本值的字面量表示,诸如:整数.浮点数以及字符串:而有很多也对布尔类型和字符类型的值也支持字面量表示:还有一些甚至对枚举类型的元素以及像数组.记录和对象等符合类型的值也支持字面量表示法. 在Java中通俗的说:int i = 1;把整数1赋值给int型变量i,整数1就是Java字面量,同样,String s = "abc";中的abc也是字面量. 整数字面量…
在计算机科学中,字面量(literal)是用于表达源代码中一个固定值的表示法(notation). 几乎所有计算机编程语言都具有对基本值的字面量表示,诸如:整数.浮点数以及字符串: 而有很多也对布尔类型和字符类型的值也支持字面量表示:还有一些甚至对枚举类型的元素以及像数组. 记录和对象等复合类型的值也支持字面量表示法. 字面常量(literal constant) 所谓字面,就是我们在程序中直接以值的行式来操作.表现(可以对照变量): 所谓常量,是指这些值不能再被改变了. 字面常量的种类: ()…
在计算机科学中,字面量(literal)是用于表达源代码中一个固定值的表示法(notation). 几乎所有计算机编程语言都具有对基本值的字面量表示,诸如:整数.浮点数以及字符串: 而有很多也对布尔类型和字符类型的值也支持字面量表示:还有一些甚至对枚举类型的元素以及像数组. 记录和对象等复合类型的值也支持字面量表示法. 字面常量(literal constant) 所谓字面,就是我们在程序中直接以值的行式来操作.表现(可以对照变量): 所谓常量,是指这些值不能再被改变了. 字面常量的种类: (1…
第三条:多用字面量语法,少用与之等价的方法 几个类:NSString  NSNumber  NSArray  NSDictionary 字面量语法是一种语法糖(syntactic sugar) NSString *someString = @"字符串字面量"; 字面量数值: NSNumber *someNumber = @1;   等价与   NSNumber *someNumber = [NSNumber numberWithInt:1]; NSNumber *intNumber =…
编写Objective-C程序时,总会用到某几个类,它们属于Foundation框架.虽然从技术上来说,不用Foundation框架也能写出Objective-C代码,但实际上却经常要用到此框架.这几个类是NSString.NSNumber.NSArray.NSDictionary.从类名上即可看出各自所表示的数据结构. Objective-C以语法繁杂而著称.事实上的确是这样.不过,从Objective-C 1.0起,有一种非常简单的方式能创建NSString对象.这就是“字符串字面量”(st…
一.字面量定义 在计算机科学中,字面量(literal)是用于表达源代码中一个固定值的表示法(notation).几乎所有计算机编程语言都具有对基本值的字面量表示,诸如:整数.浮点数以及字符串:而有很多也对布尔类型和字符类型的值也支持字面量表示:还有一些甚至对枚举类型的元素以及像数组.记录和对象等复合类型的值也支持字面量表示法 二.C#中字面量分类 静态字面量和实例自面量 静态字面量 const.枚举 实例字面量 字面量是源代码中书写的数字或字符串,用来表示一个明确类型的明确.固定的值.1.整数…