Swift文档 ---The Basics基础部分
来源:互联网 发布:java鱼雷公路车怎么样 编辑:程序博客网 时间:2024/05/21 03:54
记录下swift中不同于c和objective-c的用法.
swift的类型增加了元组(Tuple)他可以让你创建或是传递一组的数据, 还增加了可选(Optional)类型用于处理值缺失的情况,像是objective-c中nil的用法,但是比其更加的安全.
<一>常量和变量
1.常亮的声明使用的是let, 而用var来声明变量, 可以在一行中声明多个常量或是变量中间用逗号隔开.
2.类型标注: 在声明的常量或者变量的时候可以加上类型标注(type annotation),表示所存储的是什么类型的值.
var name : String = "zhang" //只要在常量或是变量名后加上 : 空格 类型名即可let age : Int = 22
而如上例在声明时赋初值,Swift可以通过这个值推断出这个常量或者变量的类型,则可省略类型的标注
3.命名规则: swift中对常变量命名规则更加开放, 几乎支持所有unicode编码 可以使用汉字等命名常变量,但是不能包含数学符号,箭头,保留的(或者非法的)Unicode 码位,连线与制表符。也不能以数字开头,但是可以在常量与变量名的其他地方包含数字。
4.输出: println和print都可用来输出,但是唯一不同的是print在输出内容最后不会换行, 而println所输出的内容会在最后换行。
swift中有一种输出方式叫做字符串插值 例子: var name = "wang" println ("My name is \(name)") 输出为: My name is wang
5.注释: 与c语言中所不同的是多行注释中可以施行嵌套注释
/*注释一开始 /*注释二开始 注释二结束*/注释一结束*/
6.数值型类型转换
let one = 3.956875 //默认为Double型转换为整型 Int(one) 3后面的0.956875被截断掉不会四舍五入进来,所以结果为 3
7. 类型别名 :就是给现有的类型定义另一个名字 使用typealias关键字来定义类型别名。
typealias otherName = Int
8. nil 不能用于非可选的常量和变量.如果代码中有常量或是变量需要处理值缺失的情况,应把他们声明成对应的可选类型. 如果声明一个可选常量或是变量没有赋值,它会被自动设置为nil
<二>断言
断言会在运行时判断一个逻辑条件是否为true. 即使用断言来保证在运行其他代码之前,某些重要的条件已经满足. 如果判断为true的话代码会继续运行,否则代码运行停止,应用也会被终止.可以使用断言来调试代码,断言允许输出一条调试信息.
可以使用全局assert函数来写一个断言.
let age = -3assert(age >= 0, "Aperson's age cannot be less than zero")//因为输入的条件结果为false所以断言会被触发,输出其后的调试信息,应用结束
断言中不可以使用字符串插值, 断言信息也可以省略
断言的使用情景:
– 整数的附属脚本索引被传入一个自定义附属脚本实现,但是下标索引值可能太小或者太大。
– 需要给函数传入一个值,但是非法的值可能导致函数不能正常执行。
– 一个可选值现在是nil,但是后面的代码运行需要一个非nil值。
- Swift文档 ---The Basics基础部分
- Swift基础部分(The Basics)
- 基础部分(The Basics)
- Swift 语言基础(1)-The basics
- Swift语言官方文档翻译(3)-The Basics
- swift 1: the basics
- The basics of swift
- The Swift Programming Language (基础部分)
- The Swift Programming Language--语言指南--基础部分
- The Swift Programming Language--语言指南--基础部分
- The Swift Programming Language--语言指南--基础部分
- 简读The Swift Programming Language官方文档--基础篇
- 1.1 NumPy The Basics(NumPy基础)
- Swift 基础部分(一)
- swift 基础部分
- swift笔记-基础部分
- Swift - 基础部分
- swift基础部分
- iOS 开发之如何编辑tableView上的cell
- V$Session
- 文本分析系列——汇总
- EJB到底是
- 详细解说 STL 排序(Sort)
- Swift文档 ---The Basics基础部分
- android上传图片到服务器(使用base64字节流的形式通过 AsyncHttpClient框架传输)
- 如何删除GitHub上远程仓库的文件夹
- (转)OSI七层模型详解
- 初次使用FragmentTabHost(v4下面的)出现的问题
- spring注解@service("service")括号中的service有什么用
- visual studio 2010也可以格式化XML文本,原来在一对的杂乱不配对的,CTRL+K+D搞定,太帅了!
- flume将日志到hive实现
- GUID和INT两种数据类型做主键的比较