Welcom to Swift

1、第一个程序
 
  
 
import Foundation
 
  
 
println(“hello world”)
 
  
 
2、常用数据类型
 
int/UInt/Double/Float/Bool/String/Array/Dictionary/元组(tuple)/可选类型(Optional)
 
  
 
3、变量常量必须设初始值
 
变量    var myName = “zhangsan”
 
常量    let myPhone = “18336070719”
 
  
 
4、整型变现形式
 
二进制: 前缀为0b
 
八进制:前缀为0o
 
十六进制:前缀为0x
 
  
 
5、类型别名
 
使用typealias定义,类似与typedef
 
  
 
typealias NSInteger = Int
 
var value:NSInteger = 12
 
  
 
6、swift不支持隐式类型转换。需要显示类型转换 String(23):把23转换成字符串
 
字符格式化\(items)
 
let apples = 3
 
let applesSummary = “I hava \(apples) apples”
 
  
 
7、数组
 
let emtptArray Array = [ ]
 
插入:
 
往数组里面加元素(末尾)  emtptArray.append(“pingguo”);
 
插入emptpt.insert(“pingguo”,atIndex:3);
 
emtptArrayi +=“pingguo “
 
  
 
emtptArray.capacity   //数组的容量2的次方,值大于等于emtptArray.count,
 
修改:
 
array[1] = “天空”
 
array[4…7] = [“bananas”,”apple”]   //把下标为4,5,6,7的元素替换
 
 删除:
 
array.removeLast()  //删除最后一个元素
 
  
 
array.removeAtIndex(4)  
 
  
 
array.removeAll()   //删除所有
 
 新建数组
 
var array = Array(count:3,repeateValue:2.5);
 
 遍历:
 
1、for item in array{
 
    println(item)
 
}
 
 2、for(index,value) in enumerate(array)
 
{
 
  println(“Time \(index+1):\(value)")
 
}
 
8、字典
 
  
 
1、let emptyDic1 = [:]   //声明一个空的字典
 
  
 
2、let empty2 = Dictionary<String,Float>()   //确定key和value的类型
 
  
 
3、var ariport = [“TYP”:”Tkkyo”,”Dub”:”Bublin"]
 
  
 
 删除
 
airports[“THO”] = nil
 
  
 
airports.removeValueForKey[“TYP”]
 
 遍历
 
for key in airports.keys
 
{//遍历所有的keys
 
}
 
  
 
for(key,value) in airport {
 
   println("\(key):\(value)")
 
}
 
  
 
9元组
 
可以将任意数据类型组装成一个元素
 
元组在作为函数返回值的时候特别适用
 
 let (x,y) = (1,2)
 
let http404Error = (404,”Not Found”)   //定义一个由Int 和String做成的元组
 
  
 
 let gtt = (status:300,desc:”OK”)
 
  
 
  
 
可选类型(Optional)
 
1、nil不能用于非可选类型
 
2、如果代码中的常量或者变量需要适配值不存在,务必将她声明称可选类型
 
3、如果定义的可选类型的对象不提供默认值,该对象将自动设置为nil
 
这个值要么存在,并且等于x;要么就不存在
 
  
 
let name = "zhanggui"
 
let number = "124"
 
  
 
let ss:Int? = name.toInt()
 
println(ss)
 
  
 
  
 
10?使用场景
 
1、声明Optional值变量
 
2、用在Optional操作中,用来判断是否响应后面的操作
 
  
 
  
 
11解包:用!(1、强制对可选量进行解包;2、声明隐式解包可选类型时,用于类中的属性)
 
  
 
//解包方法一
 
var strValue:String? = "This is my Book"
 
println(strValue!)   //解包,确定strValue的值一定存在,不需要每次都验证他的值是否存在
 
  
 
  
 
let stringValue = strValue!.hashValue   //必须解包才能获取可选量的属性或者方法
 
println(stringValue)
 
//解包方法二  选择绑定
 
if let sValue = strValue
 
{
 
    let stringValue = sValue.hashValue
 
    println(stringValue)
 
  
 
}
 
//隐式解包可选类型,在定义的时加!
 
let assumedString:String! = "A apple"
 
println(assumedString)
 
println(assumedString.hashValue)
时间: 2024-12-03 13:12:38

Welcom to Swift的相关文章

Swift语法专题十二——方法

Swift讲解专题十二--方法 一.引言         方法只是一个术语,其实就是将函数与特定的类型结合,类.结构体.枚举都可以定义方法,方法又分为实例方法和类型方法,类型方法类似于Objective-C中的类方法.Swift和Objective-C的一大不同是,Objective-C只有在类中可以定义方法. 二.实例方法基础         实例方法的语法和函数完全一致,其和具体类型的实例所关联,实例方法在调用时由类型的实例点语法进行调用来完成一些功能模块.示例如下: class Math

swift版的GCD封装

swift版的GCD封装   说明 本人针对swift封装了GCD,包括GCDQueue,GCDGroup,GCDTimer以及GCDSemaphore,使用较为便利.   源码 https://github.com/YouXianMing/Swift-GCD // // GCDQueue.swift // GCD // // http://home.cnblogs.com/u/YouXianMing/ // https://github.com/YouXianMing // // Create

小波说雨燕 第三季 构建 swift UI 之 度假清单 学习笔记

最终的效果: <1>第一个场景: 1.本地化 界面简体中文化 Supporting Files - info.plist Localization native development region 本地的编程的地区 选择China,这样的话,用到系统的UI组件,就会变成中文的样式. 2.文本框占位符 属性:Placeholder 另外需要积累的是:Clear Button Appears while editing :当你输入的时候会出现这个(清除)按钮 3.自动布局 添加文本框顶部,左侧和

Swift数组、字典和集合

原文出自:标哥的技术博客 前言 Swift语言提供Array.Set和Dictionary三种基本的集合类型用来存储集合数据.数组是有序的数据集:集合是无序无重复的数据集:而字典是无序的键值对数组集. Swift的Array.Set和Dictionary类型被实现为泛型集合.因此,它所存储的元素的类型必须是一致的,同样,我们取出来的数据类型也是明确的. 集合的可变性(Mutability Of Collections) 如果创建一个Arrays.Sets或Dictionaries并且把它分配成一

Swift下标

还记得字典吗? var numberOfLegs= ["spider": 8,"ant": 6, "cat":4] numberOfLegs["bird"]= 2 ["bird"]就是下标 下标可以在类和结构体中定义. 定义下标 subscript(index: Int) -> Int { get { //return anappropriate subscript value here } set(

swift网络编程入门应用:天气预报

首先在Main.storyborad中添加并设置好三个label做简单的界面显示: 1 import UIKit 2 3 //1.construct a constructs 4 struct Weather { 5 var city: String? 6 var weather: String? 7 var temp: String? 8 }//为什么不实用class呢,因为结构体初始化方便,不用写初始化方法 9 10 11 12 class ViewController: UIViewCon

利用CocoasPod在Swift项目中使用CorePlot

最近在研究可用的第三方的图标控件,然后网上搜了之后,感觉功能比较强大的就是CorePlot了,于是就开始研究如何部署到程序中.网上关于这方面的教程比较少,大部分都是objective-c的,而且历史也比较久远,后来找到一篇老外写的blog,讲述在swift中如何使用CorePlot(http://blog.alwold.com/2014/08/07/using-coreplot-with-swift-in-ios/),研究了好久,总算成功安装了.下面就一步一步介绍. 1. 建立工程 首先建立一个

Swift数据类型及数据类型转换

整型      Swift 提供 8.16.32.64 位形式的有符号及无符号整数.这些整数类型遵循 C 语言的命名规 约,如 8 位无符号整数的类型为 UInt8,32 位 有符号整数的类型为 Int32.与 Swift 中的所有 类型一样,这些整数类型的名称以大写字母开 头.   Swift 还提供了一个整数类型Int:      在 32 位平台,Int 与 Int32 宽度一致.      在 64 位平台,Int 与 Int64 宽度一致.              Swif

Swift方法

Swift 中的方法是与特定类型(类和结构体)相关的函 数. 实例方法 隶属于某个特定类型(类或结构体)实例函数. class Counter{ var count = 0 funcincrement() { count++ } funcincrementBy(amount: Int) { count += amount } func reset() { count = 0 } } let counter = Counter() // the initial countervalue is 0