第一节:变量,常量,类型推断,字符,字符串

 //swift学习第一节
/*
变量
常量
类型推断
字符
字符串
*/ import UIKit //变量
var str = "swift" //类型推断
str = "hello"
var str1:NSString = "shaoting"
var num =
var num2:Int = //常量
let num3 = //类型推断
//num3 = 123 error:常量不可以修改
let str2:NSString = "pheromone" //Int 有符号的整形
//UInt 无符号的整形 Int.max
Int.min var numFloat : Float = /
var numDouble : Double = / var num4 =
num4.dynamicType //类型
var num5 = 0.14
num5.dynamicType num5 = + 0.14
num5.dynamicType
//num5 = num4 + num5 eroor:类型不同不能相加
num5 = Double(num4) + num5 //初始化字符串,默认值为nil
let strr = ""
let strrr = String() let swift:Character = "S"
let swiftInChar:[Character] = ["s","w","i","f","t"];
let swift1 = String(swiftInChar)
let swift11 = swiftInChar var message = "i love you"
let meessageLength = message.characters.count //message[0] error:swift中,访问字符串中的某个字符不能使用字符串数组的某个下标
message.startIndex // 第一个下标
message.endIndex //最后一个下标
message[message.startIndex.successor()] //第一个下标的下一个值
message[message.endIndex.predecessor()] //最后一个下标的上一个值
message[message.startIndex.advancedBy()] message.insertContentsOf("iOS".characters, at: message.startIndex)//在某个字符串的某个位置加入某些字符
message.removeAtIndex(message.endIndex.predecessor())
//message.removeRange(<#T##subRange: Range<Index>##Range<Index>#>) 删除范围内的内容 //比较字符串
let message1 = "ios hello"
if message != message1{
print("!=")
} let swi = "我是一只猿"
swi.hasPrefix("我")//判断前端是否包含
swi.hasSuffix("猿")//判断后端是否包含 for code in swi.utf8 {
print("\(code)")
} //数组
var strS:[String] = ["ios","swift"];
//var strS1:[] = [12,34]; 没有指定元素类型

第二节:元组Tuple 操作符operators

 /*
swift学习第二节
元组 Tuple
操作符 Operators */ import UIKit //元组 :自己定义一组数据,类型也自己定义
let success = (,"HTTP OK")
let fileNotFound = (,"File not found")
let me = (name:"shaoting",no:,email:"510738319@qq.com")
success.
success.
me.name var (code,message) = success
print(code)
print(message) //操作符 Operators
var a =
var b = let sum = a + b
let sub = a - b
let mul = a * b
let div = a / b
let mod = a % b
let mod1 = % b += // b = b+10
b -= // b = b-10
b *= // b = b*10
b /= // b = b/10
b %= // b = b%10 let isEqual = sum ==
isEqual ? "YES" : "NO" //区间运算符
//包含1到5
for index in ...{
print(index) // 1 2 3 4 5
} for index in ..<{
print(index) // 1 2 3 4
}

第三节:集合--有序集合(数组)无序集合(set,dictionary)

 /*
swift学习第三节
集合(数组,set,dictionary)
有序集合: 数组
无序集合: set dictionary
*/ import UIKit
//数组
var ary1:Array<Int> = Array<Int>()//定义一个值为空的int类型的数组
var ary2:[Int] = ary1
var ary3 = ary1 var three = [Int](count: , repeatedValue: )
var six = three + three //相同类型的数组可以做运算 var four = [,,,]
four.count if ary1.isEmpty{
print("ary1 为空数组")
} ary1.append() // 添加元素
ary1 += [,,] // 添加多个
ary1[...]
ary1[..<]
ary1[...] = [,] //修改元素
ary1
ary1.insert(, atIndex: ) //在某个下标添加元素
ary1.removeAtIndex() //删除某下标的元素
ary1.removeFirst() //删除第一个元素
ary1.removeLast() //删除最后一个元素
ary1
for (index,value) in ary1.enumerate(){
print("index : \(index) value : \(value)")
} //set
//输出hash值
let number =
number.hashValue
let PI = 3.14
PI.hashValue
let string = "Swift"
string.hashValue //定义一个元素类型为字符的空set
let emptySet = Set<Character>()
let vomel:Set<Character> = ["a","e","i","o","u"];
var evenSet:Set = [,,,,] //类型推断
evenSet.count //该set的个数
evenSet.removeFirst() //移除set的第一个元素
evenSet.insert() //插入一个元素25
evenSet.contains() //判断是否包含
//因为set是无序集合,想要保证一定顺序可以使用sort
for number in evenSet.sort(){
print(number)
} //setA 和 setB 的交集
var setA : Set = [,,,,]
var setB : Set = [,,,]
let setiAB : Set = setA.intersect(setB)
//setA 和 setB 的对称差
let seteAB : Set = setA.exclusiveOr(setB)
//setA 和 setB 的并集
let unionAB : Set = setA.union(setB)
//setA对于setB的补集
let subAB : Set = setA.subtract(setB) //判断集合是否相等
if setA == setB{
print("相等")
}else{
print("不相等")
} setB.isSupersetOf(setA) //判断B是否是A的超集
setB.isSubsetOf(setA)//判断B是否是A的子集 //字典
//创建一个key是int value是string的字典
var int2String = [Int:String]()
int2String = [:]
int2String[] = "Ten"
int2String[] = "Twenty" var capitalNumber = [
:"一",
:"二",
:"三"
] capitalNumber[] // 字典某个下标值
capitalNumber.count //字典的个数
capitalNumber.isEmpty //判断字典是否为空
capitalNumber.updateValue("yi", forKey: ) //修改字典某个key对应的值
capitalNumber[] = nil //对某个下标置空
capitalNumber.removeValueForKey() //移除某个key对应的值
capitalNumber
capitalNumber.dynamicType //类型 for (key,value) in capitalNumber{
print("\(key):\(value)")
}
let keyAry = [Int](capitalNumber.keys);
let valueAry = [String](capitalNumber.values);

第四节:循环语句(for while repeat-while switch)

 /*
swift学习第四节
循环语句
for while repeat-while switch */
import UIKit for var i = ;i < ; i++ {
print(i)
} let vomel = ["a","e","i","o","u"]
for char in vomel{
print(char)
} for number in ...{
print(number)
} for _ in ...{
print("*",terminator:"")
} var i =
while i < {
print(i)
++i
} //var n = 0
//repeat {
// print(vomel[n])
// ++i
//}while n < 5 let me = "a"
switch me{
case "a":
print("me is \(me)")
case "e":
print("me is \(me)")
case "i":
print("me is \(me)")
case "o":
print("me is \(me)")
case "y":
print("me is \(me)")
default:
print("都不是")
} switch me{
case "a","e","i","o","u":
print("这个是元音")
default:
print("这个不是元音")
} let number =
switch number{
case ...:
print("这个数在1-10之间")
case ...:
print("这个数在11-99之间")
default:
print("这个数大于100")
} let point = (,)
switch point{
case (,):
print("在原点")
case (_,):
print("在x轴上")
case (,_):
print("在y轴上")
case (-...,-...):
print("在该范围内")
default:
print("位置跑偏")
} switch point{
case (let x,):
print("\(x)")
case (,let y):
print("\(y)")
case let(x,y):
print("\(x),\(y)")
} switch point{
case let(x,y) where x == y:
print("X=Y")
case let(x,y) where x == -y:
print("x=-y")
case let(x,y):
print("\(x),\(y)") }

源码下载地址:

http://download.csdn.net/detail/shaoting19910730/9461377

https://github.com/pheromone/swift-

swift系统学习第一章的更多相关文章

  1. swift系统学习第二章

    第五节:可选类型 optional //: Playground - noun: a place where people can play import UIKit /* Swift学习第五节 可选 ...

  2. web学习第一章

    web学习第一章   我是大概9月10日开始走上IT之路的,一开始学习了小段时间的自动化办公软件, 昨天我开始学习客户端网页编程,我了解什么是WEB,一些比较老古董的计算模式和发展历史,印象最让我深刻 ...

  3. oracle学习 第一章 简单的查询语句 ——03

    1.1最简单的查询语句 例 1-1 SQL> select * from emp; 例 1-1 结果 这里的 * 号表示全部的列.它与在select 之后列出全部的列名是一样的.查询语句以分号( ...

  4. Intel汇编语言程序设计学习-第一章 基本概念

    第一章基本概念 1.1  简单介绍 本书着重讲述MS-Windows平台上IA-32(Intel Architecture 32bit,英特尔32位体系架构)兼容微处理器的汇编语言程序设计,可以使用I ...

  5. Asp.Net MVC4 + Oracle + EasyUI 学习 第一章

    Asp.Net MVC4 + Oracle + EasyUI  第一章 --操作数据和验证 本文链接:http://www.cnblogs.com/likeli/p/4234238.html 文章集合 ...

  6. Java基础知识二次学习-- 第一章 java基础

    基础知识有时候感觉时间长似乎有点生疏,正好这几天有时间有机会,就决定重新做一轮二次学习,挑重避轻 回过头来重新整理基础知识,能收获到之前不少遗漏的,所以这一次就称作查漏补缺吧!废话不多说,开始! 第一 ...

  7. C#高级编程 (第六版) 学习 第一章:.Net体系结构

    第一章 .Net体系结构 1,公共语言运行库(Common Language Runtime, CLR) .Net Framework的核心是其运行库的执行环境,称为公共语言运行库,或.Net运行库. ...

  8. Ruby学习-第一章

    第一章 字符串,数字,类和对象 为了证明Ruby真的好用,hello world也能写的如此简洁: puts 'hello world' 1.输入/输出 print('Enter your name' ...

  9. Artech的MVC4框架学习——第一章初步认识ASP.NET MVC

    前言: Artech觉得掌握ASP.NET MVC具有三个层次. 第一层了解基本的编程模式,掌握Controller和View的定义方式,知道路由如何注册以及验证规则如何定义. 第二个层次要求我们对A ...

随机推荐

  1. Jdk1.8+Eclipse+MySql+Tomcat开发Java应用的环境搭建

    Java学习开发的入门教程,方便大家在学习java开发过程中掌握最基本的环境搭建 有视频,有真相 http://www.chuanke.com/1340360-164338.html jdk是操作系统 ...

  2. 如何使用java调用DLL运行C++(初篇)

    JNI:Java Native Interface,简称JNI,是Java平台的一部分,可用于让Java和其他语言编写的代码进行交互. 下面是从网上摘取的JNI工作示意图:

  3. hdu-----(2807)The Shortest Path(矩阵+Floyd)

    The Shortest Path Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  4. Nginx+Php-fpm+MySQL+Redis源代码编译安装指南

    说明:本教程主要包括以下三个部分: 1. 源代码编译安装Nginx 2. 源代码编译安装php以及mysql.redis扩展模块 3. 配置虚拟主机 文中所涉及安装包程序均提供下载链接,欢迎使用 运行 ...

  5. C语言实现统计字符个数

    #include<stdio.h> int main() {     int sz[10]={0},zm[26]={0},z[26]={0},i,space=0,e=0,t=0;      ...

  6. 利用百度地图开源sdk获取地址信息。

    注册百度开发者帐号,下载相关sdk 添加权限: 添加百度注册访问应用(AK)码 添加源代码文件到libs文件: 代码如下: package com.lixu.baidu_gps; import com ...

  7. 异步加载js

    //异步加载js function loadScript(url,callback){ var script = document.createElement("script"); ...

  8. POJ 1011 Sticks dfs,剪枝 难度:2

    http://poj.org/problem?id=1011 要把所给的集合分成几个集合,每个集合相加之和ans相等,且ans最小,因为这个和ans只在[1,64*50]内,所以可以用dfs一试 首先 ...

  9. EasyMock的原理及使用方法

    就不费劲转过来了https://www.ibm.com/developerworks/cn/opensource/os-cn-easymock/这上面介绍的比较全.

  10. 根据图片Uri获得图片文件

    2013-12-17 1. 根据联系人图片Uri获得图片文件并将它显示在ImageView上, 代码如下: Uri uri = Uri.parse("content://com.androi ...