iOS---初识Swift(一)
一、Swift简介
○ 2010年的夏天, 苹果公司的开发人员Chris Latten接到了一个特别的任务, 为OS X 和iOS平台开发下一代编程语言, 也就是Swift.
○ 苹果公司于2014年WWDC(苹果开发者大会) 发布的新开发语言Swift, 可与Objective-C共同运行于Mac OS和iOS平台, 用于搭建基于苹果平台的应用程序
○ 2015年的WWDC开发者大会上, 苹果公司推出了Swift2.0版本, 并且Swift完全开源
二、基本语法
//Swift中导入类库使用import, 不再使用<>或者""了
import Foundation //Swift中的输出语句:print
print("Hello, World!") //MARK: - 定义常量、变量 //定义常量 (使用完第一次就不能修改值)
let myGender = "女"
//myGender = "男" //定义变量
var carName = "BMW"
carName = "Audi"
print(carName) //MARK: - 定义常量变量: 变量类型的隐式转换 //在swift中如果定义常量变量不给定相关的类型, 它会隐式转换成给定的初值类型
let name = "Jack" //如果这样定义出来一个常量, 它会隐式转换成String类型 let name1 : String = "Rose" //如果给定类型,后边赋值的时候需要根据类型进行赋值 let age : Int = 18 //如果定义常量最好给出初始化, 定义变量可以不给初始值 var age1 : Int? //?表示age1的类型
print(age1) //定义一个字符类型的变量
var char : Character = "A" //赋值字符类型的时候 仅需一个字母即可
//定义一个bool类型的变量 [在swift中bool类型的变量只有true活着false]
var flag : Bool = false //MARK: - 字符串string
//(1)创建一个空的字符串
var str_empty = ""
var str1_empty = String() //(2)判断一个字符串为空字符串
if str_empty.isEmpty {
print("str_empty is empty")
} //(3)字符串的拼接
var str_url = "http://"
var str = "www.baidu.com" let str_new_url = str_url + str
print(str_new_url)
print("百度网址:\(str_new_url)\n") // \(变量名)输出相关的内容[插入式取值] //(4)获取字符串的长度
var str1: String = "dag"
print(str1.characters.count) //(5)字符串的比较
var str2 = "MBBoy"
var str3 = "GBLW" if str2 != str3 { // ==
print("两个字符串不相等")
} //MARK: - 数组
//Swift数组中的元素类型必须相同 //定义一个数组
var nameArray = ["yuanyuan", "GBLW", "WYW", ]
print(nameArray) var nameArray1 : Array<String> = ["YaQian", "XQ", "FatZhou"] //定义一个空数组 (字符串)
let array = Array<String>()
print(array) //访问数组中的元素
print(nameArray[1]) //向数组中添加元素
var int_array = Array<Int>()
int_array.append(520)
int_array.append(123)
print(int_array) //使用运算符添加数组元素
int_array += [100]
int_array += [120] print(int_array) //使用运算符添加多个数组元素
int_array += [800, 900, 55]
print(int_array) //插入元素到具体的位置
int_array.insert(521, atIndex: 1)
print(int_array) //移除某个元素
int_array.removeAtIndex(4)
print(int_array) //移除所有元素
int_array.removeAll()
print(int_array) //MARK: - 字典 //定义一个字典类型的变量
var dic : Dictionary<String, Int> = ["a":18, "b":69, "c":38]
print(dic) //定义空字典
var dic1 : Dictionary<String, Int> = [:]
var dic2 = Dictionary<String, Int>() //往字典里赋值
dic["d"] = 50
print(dic) //修改字典中的内容 (根据键值修改)
dic["a"] = 90
print(dic["a"]) //删除字典中的内容 (根据键值去删除)
dic.removeValueForKey("b")
print(dic) //MARK: - 元组
//定义一个元组 //方法一:直接初始化一个元素 (使用swift隐式转换的特点)
let tuples = ("蓝鸥1班", ["iOS", "html5", "Android"])
print(tuples) //方法二:显式初始化的方式
let tuplesNew : (String,Array) = ("蓝鸥8班", ["iOS", "html5", "Android"])
print(tuplesNew) //取出元组
//第一种取值方式:直接把元组赋值给另外一个常量, 根据相关标记进行取值
let tuplesNew1 : (classroom:String, course:Array) = tuplesNew
var classInfo = tuplesNew1.classroom + tuplesNew1.course[0] + tuplesNew1.course[1] + tuplesNew1.course[2]
print(classInfo) //第二种方式:直接根据下标取值
var classInfoNew = tuplesNew1.0 + tuplesNew1.1[0] + tuplesNew1.1[1] + tuplesNew1.1[2]
print(classInfoNew) //MARK: - 循环
//第一种形式:
for var i = 1;i < 10;i++ {
print(i)
} //第二种形式:
for number in 1..<10 {
print(number)
} //第三种形式
for number in 1...10 {
print(number)
} //while循环和repeat...while
var i = 8
while i > 0 {
i--
print(i)
} repeat { //先执行一次循环体, 再进行相关的循环
print("我爱你们")
}while 1 < 0 //使用循环遍历数组
var animalArray = ["阿福", "pig", "cat", "tiger", "fish"]
for animal in animalArray {
print(animal)
} //使用循环遍历字典
var animalDic = ["dog":"iOS---初识Swift(一)的更多相关文章
- iOS、swift、React Native学习常用的社区、论坛
<!----iOS> <!----Swift>*IOS开发常用社区:http://code4app.com/ *IOS开发常用社区:http://www.cocoachina. ...
- iOS开发Swift篇—(一)简单介绍
iOS开发Swift篇—简单介绍 一.简介 Swift是苹果于2014年WWDC(苹果开发者大会)发布的全新编程语言 Swift在天朝译为“雨燕”,是它的LOGO 是一只燕子,跟Objective-C ...
- iOS开发Swift篇—(二)变量和常量
iOS开发Swift篇—(二)变量和常量 一.语言的性能 (1)根据WWDC的展示 在进行复杂对象排序时Objective-C的性能是Python的2.8倍,Swift的性能是Python的3.9倍 ...
- iOS开发Swift篇—(三)字符串和数据类型
iOS开发Swift篇—(三)字符串和数据类型 一.字符串 字符串是String类型的数据,用双引号""包住文字内容 let website = "http://www ...
- iOS开发Swift篇—(四)运算符
iOS开发Swift篇—(四)运算符 一.运算符 1.Swift所支持的部分运算符有以下一些 赋值运算符:= 复合赋值运算符:+=.-= 算术运算符:+.-.*./ 求余运算符:% 自增.自减运算符: ...
- iOS开发Swift篇—(五)元组类型
iOS开发Swift篇—(五)元组类型 一.元组类型介绍 1.什么是元组类型 元组类型由 N个 任意类型的数据组成(N >= 0),组成元组类型的数据可以称为“元素” 示例: let posit ...
- iOS开发Swift篇—(六)流程控制
iOS开发Swift篇—(六)流程控制 一.swift中的流程控制 Swift支持的流程结构如下: 循环结构:for.for-in.while.do-while 选择结构:if.switch 注意:这 ...
- iOS开发Swift篇—(七)函数(1)
iOS开发Swift篇—(七)函数 一.函数的定义 (1)函数的定义格式 func 函数名(形参列表) -> 返回值类型 { // 函数体... } (2)形参列表的格式 形参名1: 形参类型1 ...
- iOS开发Swift篇—(八)函数(2)
iOS开发Swift篇—(八)函数(2) 一.函数类型 函数类型也是数据类型的一种,它由形参类型和返回值类型组成,格式是 (形参类型列表) -> 返回值类型 func sum(num1: Int ...
- iOS开发Swift篇—(九)属性
iOS开发Swift篇—(九)属性 一.类的定义 Swift与Objective-C定义类的区别 Objective-C:一般需要2个文件,1个.h声明文件和1个.m实现文件 Swift:只需要1个. ...
随机推荐
- go排序
补注: 近来又看 go 的排序, 发现以前对 go 的排序理解的有点浅了. go 的排序思路和 c 和 c++ 有些差别. c 默认是对数组进行排序, c++ 是对一个序列进行排序, go 则更宽泛一 ...
- javascript正则表达式
引用:http://www.jb51.net/article/72192.htm
- 绿色 或者 免安装 软件 PortableApps
Refer to http://portableapps.com/apps for detail. Below is just a list at Jan-01-2017 for quick show ...
- myeclipse下构建maven web项目
首先创建一个Maven的Project如下图 我们勾选上Create a simple project (不使用骨架) 这里的Packing 选择 war的形式 由于packing是war包,那么下面 ...
- Python之路 day2 集合的基本操作
#!/usr/bin/env python # -*- coding:utf-8 -*- #Author:ersa ''' #集合是无序的 集合的关系测试, 增加,删除,查找等操作 ''' #列表去重 ...
- linux命令格式及基础命令(一)
linux命令格式 ~]#COMMAND [选项] [参数] 例如: ~]#ls 不带任何选项和参数 ``` stylus ~]#ls -lh /etc 列出/etc下所有文件和目录,同时要求以格式和 ...
- CSS样式应用
CSS样式应用的方法: (1)行内样式,将css样式直接放到标签当中,一般都是放入标签的style属性中,它是最方便的一种样式,也是最不方便修改的样式.如下: (2)内嵌式,通过将css写在网页源文件 ...
- 课堂作业二 PAT1025 反转链表
MyGitHub 终于~奔溃了无数次后,看到这个结果 ,感动得不要不要的::>_<:: 题目在这里 题目简述:该题可大致分为 输入链表 -> 链表节点反转 -> 两个步骤 输入 ...
- CentOS_7.2安装MySQL_5.7
一.安装依赖包和开发工具: yum install vim vim-enhanced wget zip unzip telnet ntsysv compat* apr* nasm* gcc gcc* ...
- android .9图的作用
参考:http://www.cnblogs.com/lianghui66/archive/2013/01/08/2850581.html .9图的介绍 1.这种格式的图片是Android平台上一种被拉 ...