iOS开发——swift篇&Swift新特性(一)语言基础

语言基础中的新特性

常量和变量的命名

Swift可以使用几乎任何字符来作为常量和变量名,包括Unicode:

let π = 3.14159
let 你好 = "你好世界"
let 星星 = "★"

注释可嵌套

Swift中的多行注释/**/可以嵌套,这样可以方便地在大段已注释的代码块中继续添加注释:

/* 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 */

数量表示

浮点数12.1875可以表示为:

let decimalDouble= 12.1875
let exponentDouble= 1.21875e1

数字可以包含额外的下划线_,增加代码的可读性,但是不影响代码的运行:

let paddedDouble= 000123.456
let oneMillion= 1_000_000
let justOverOneMillion= 1_000_000.000_000_1

元组类型

Swift中可以定义元组类型,将一些不同的数据封装成一个元素,并且还可以作为函数值返回:

let (statusCode, statusMessage) = http404Error
println("The status code is \(statusCode)")
// prints "The status code is 404"
println("The status message is \(statusMessage)")
// prints "The status message is Not Found"

如果仅需要元组中的个别值,可以使用_来忽略其他值:

let (justTheStatusCode, _) = http404Error
println("The status code is \(justTheStatusCode)")
// prints "The status code is 404"

元组的赋值:

let (x, y) = (1, 2)
// x等于1, 并且y等于2

可选类型(Optional Type)

简单来讲这种类型可以是一个特定的值,或者为空。使用类型+?的形式来定义:

let possibleNumber = "123"
let convertedNumber = possibleNumber.toInt()
// convertedNumber is inferred to be of type "Int?", or "optional Int"

更多关于可选类型,?!的问题,可以参考:Swift中的问号?和感叹号!

浮点数的余数运算

Swift中浮点数也可以进行余数运算:

8 % 2.5 // equals 0.5

范围运算符

使用a...b定义一个封闭范围,从a到b包括a和b的所有值

for index in 1...5 {
println("\(index) times 5 is \(index * 5)")
}
// 1 times 5 is 5
// 2 times 5 is 10
// 3 times 5 is 15
// 4 times 5 is 20
// 5 times 5 is 25

使用a..b定义左闭右开区间,从a到b,包括a但是不包括b的所有值

let names = ["Anna", "Alex", "Brian", "Jack"]
let count = names.count
for i in 0..count {
println("Person \(i + 1) is called \(names[i])")
}
// Person 1 is called Anna
// Person 2 is called Alex
// Person 3 is called Brian
// Person 4 is called Jack

Switch语句

Swift中的switch语句不会在case语句后面因为没有break而自动跳转到下一个case

时间: 2024-08-19 09:38:24

iOS开发——swift篇&Swift新特性(一)语言基础的相关文章

iOS开发项目篇—08新版本特性·SrollView

iOS开发项目篇—08新版本特性 一.简单说明 展示新版本的特性:第一次使用一些应用软件时,展示这个版本的软件的新特性,一般在第一次启动程序的时候显示. 1.什么情况下显示版本新特性: (1)第一次使用某个软件时(X) (2)第一次使用某个版本时,显示版本新特性(V) 2.怎么知道这个软件的版本呢? 在plist文件里,bundle version中显示版本号. 3.如何显示版本新特性? 应该在YYAppDelegate.m中进行判断: 如果是第一次使用这个版本,那么就显示版本新特性(设置为wi

iOS开发项目篇—09新版本特性·分享

iOS开发项目篇—09新版本特性·分享和开始 一.ios开发中图片的加载 图片的加载: [UIImage imageNamed:@"home"];  加载png图片 (一)非retina屏幕 (1)3.5 inch(320 x 480) * home.png (二)retina屏幕 (1)3.5 inch(640 x 960) * [email protected] (2)4.0 inch(640 x 1136) * [email protected](如果home是程序的启动图片,才

iOS开发实用技巧—项目新特性页面的处理

iOS开发实用技巧篇—项目新特性页面的处理 说明:本文主要说明在项目开发中会涉及到的最最简单的新特性界面(实用UIScrollView展示多张图片的轮播)的处理. 代码示例: 新建一个专门的处理新特性界面的控制器,可以实用代码也可以用xib,在这里实用纯代码方式,创建一个控制器NewfeatureViewController. 头文件代码: 1 // 2 // JMNewfeatureViewController.h 3 // 4 5 #import <UIKit/UIKit.h> 6 7 t

iOS开发——UI篇Swift篇&amp;玩转UItableView(一)基本使用

UItableView基本使用 1 class ListViewController: UIViewController , UITableViewDataSource, UITableViewDelegate { 2 3 //定义listTableView 输出口 4 @IBOutlet var listTableView : UITableView! 5 6 //定义数组 7 var items:[String] = ["UITableView高级使用", 8 "自定义U

iOS开发——实用篇Swift篇&amp;项目开发常用实用技术

项目开发常用实用技术 实现拨打电话 要实现打电话功能,最简单最直接的方式便是:直接跳到拨号界面 (注意:这个需要真机调试,模拟器无效果) 1 //自动打开拨号页面并自动拨打电话 2 UIApplication.sharedApplication().openURL(NSURL(string :"tel://123456")!) 邮件发送功能的实现 2015-07-17 10:38发布:yuhang浏览:21 使用MessageUI.framework框架除了可以发送短信,还能发送Ema

iOS开发——设备篇Swift篇&amp;判断设备类型

判断设备类型 1,分割视图控制器(UISplitViewController) 在iPhone应用中,使用导航控制器由上一层界面进入下一层界面. 但iPad屏幕较大,通常使用SplitViewController来实现导航(这个是iPad专用的视图控制器).在横屏下,左侧显示一个导航列表,点击后右边显示对应的详情.竖屏情况下显示方式会有所不同,默认只显示详细面板,原来左侧的导航列表会通过浮动窗口隐藏,需要从边缘向内拖动来显示. 2,开发兼容的iOS应用 有时候需要开发兼容iPhone.iPod.

iOS开发——UI篇Swift篇&amp;玩转UItableView(四)自定义&amp;封装

UItableView自定义&封装 一:Model 1 class AppsModel: NSObject { 2 3 //定义模型的三个属性 4 var imageName:String! //图片名称 5 var appName:String! //应用名称 6 var appDescription:String! //应用描述 7 8 9 10 //自定义初始化方法 11 init(imageName image_Name:String , app_Name:String , app_De

iOS开发——动画篇Swift篇&amp;动画效果的实现

Swift - 动画效果的实现 在iOS中,实现动画有两种方法.一个是统一的animateWithDuration,另一个是组合出现的beginAnimations和commitAnimations.这三个方法都是类方法. 一,使用animateWithDuration来实现动画 (1)此方法共有5个参数: duration:动画从开始到结束的持续时间,单位是秒 delay:动画开始前等待的时间 options:动画执行的选项.里面可以设置动画的效果.可以使用UIViewAnimationOpt

iOS开发——UI篇Swift篇&amp;玩转UItableView(三)分组功能

UItableView分组功能 1 class UITableViewControllerGroup: UIViewController, UITableViewDataSource, UITableViewDelegate { 2 3 var titleString:String! 4 5 @IBOutlet var titleLabel:UILabel! 6 @IBOutlet var listTableView : UITableView! 7 8 9 //索引字母数组 10 var ar

iOS开发——UI篇Swift篇&amp;玩转UItableView(二)高级功能

UItableView高级功能 1 class UITableViewControllerAF: UIViewController, UITableViewDataSource, UITableViewDelegate { 2 3 var titleString:String! 4 5 @IBOutlet var titleLabel:UILabel! 6 @IBOutlet var listTableView : UITableView! 7 @IBOutlet var editDoneBut