IOS入门之Swift语言(一)
经过不断的努力,小哥也买了台苹果设备,终于可以开始我的IOS之旅了,说来确实令人苦恼,为了学习IOS我这着贫农阶级,省了几个月的零花钱,外加向亲朋好友求救,最终痛下心扉,卖了台MAC pro128G版。苦逼的事情就不在多说,下面聊一聊,初次使用的心得体会,IOS的做工确实没说的,铝合金的机身,看上去就很显身份,用起来确实流畅,而且附带了很多有趣的应用,其中最让我惊奇的是段视频制作软件,提供了很多模板,让我制作小视频方便了很多。其次就是它的多手指操作了,炫酷的很,不过初次拿到本本时,确实很头疼,不想win那样只要会点就行了,总的来说,用着就是爽。闲话不多说,下面开始我们的Swift语言学习。
我们都知道,苹果公司最早使用Object-C来开发苹果应用,现在苹果公司对Object-C进行改进,退出了Swift语言,我相信在不久的将来Swfit必定取代Object-C成为IOS开发主流语言,废话不多说,下面开始我们的Swift之旅。
首先说明一下我使用的Xcode的版本,我使用的是Xcode7.0版本,相对6.0语法上应该是有一定的调整,大家知晓。
1、创建工作空间
打开我们的Xcode,然后点击左上角File->new->workspace:

2、创建Swift应用
这里为了方便,我们以创建os etc项目来做入门学习。创建我们的应用时,语言一定选择Swift,项目的目录结构:

3、Hello word:
import Foundation
print("Hello, World!")
print("Hello, Swift!")
print("Hello, IOS!")
print("\(2015)年\(10)月\(17)日")
4、Swift变量与常量
var a =
var b =
var c = a + b
print("c=\(c)") let d =
//d = d + 1//常量不能改变
print("d=\(d)")
5、Swift的数据类型
var a = "Hello, "//全自动的类型推断
var b:String = "Hello, "//指定变量的类型
print("a=\(a)")
print("b=\(b)") var c:Int =
print("c=\(c)")
6、Swift字符串拼接
var str = "Hello, "
str = str + "word!"
print(str) //str = str + 100//不允许
str = "\(str),word,\(100)"
print(str) var i:Int =
str = "\(str)-\(i)"
print(str)
7、Swift数组
var arr = ["Hello word!","2015年10月17日",,2.3]//定义声明数组并赋值
print(arr) var brr = []//定义一个空数组
var crr = [String]()//定义一个自能存放String类型数据的空数组
var drr = [Int]()//定义一个只能存放Int型数据的空数组
8、Swift字典用法
/**
Swfit字典用法类似于JAVA中的容器对象Map
*/
var dect = ["china":"中国","year":""]//定义字典并赋值
dect["sex"] = "Femail"//动态添加字典
print(dect)
print(dect["china"])//根据key取字典中保存的Value
9、Swift for循环用法
var arr = [String]()
var brr = [String]()
var crr = [String]()
//闭区间
for i in ...{
arr.append("Item\(i)")
}
//左闭右开
for i in ..<{
brr.append("brr\(i)")
}
//左闭右开
for var i = ; i < ; i++
{
crr.append("crr\(i)")
}
print(arr)
print(brr)
print(crr) //遍历数组元素
for value in brr{
print(value)
} //while循环遍历数组
var i = ;
while i < crr.count{
print(crr[i])
i++
} //for循环遍历字典中的元素
var dect = ["name":"china","age":""]
for (key,value) in dect{
print("key=\(key)")
print("value=\(value)")
}
10、Swift流程控制
for i in ...{
if(i%==){
print(i)
}
}
var a:String?=nil//可选变量
if var name=a//当可选变量为空时不执行
{
print("name=\(name)")
}
a = "hpu"
if var name=a
{
print("name=\(name)")
}
11、Swift中函数的用法
//函数默认没有返回值
func sayHello(name:String){
print("Hello \(name)")
}
sayHello("hpu") var say = sayHello//声明函数
say("ios")//赋值调用 //返回一个值
func getName()->String{
return "hpu"
}
var a = getName()
print(a) //返回多个值
func getName()->(String,Int){
return ("hpu",)
}
var (b,c) = getName()
print("b=\(b),c=\(c)") //传参带返回值
func setName(name:String)->String{
return name
}
var name = setName("Hello HPU")
print(name)
12、Swift中面向对象设计
class SayHello{
func hi(name:String){
print("Hi \(name)")
}
}
var say = SayHello()
say.hi("hpu")
//继承
class Hi:SayHello{
//继承默认实现父类方法
}
var hi = Hi()
hi.hi("ios")
//继承
class Hello:SayHello{
//重写父类方法
override func hi(name:String) {
print("Hello \(name)")
}
}
var hello = Hello()
hello.hi("ios")
//初始化
class A {
func AA(){
print("aa")
}
}
class B:A {
var name:String
init(name:String){
self.name = name
}
override func AA() {
print("Hello \(self.name)")
}
}
var b = B(name: "理工大")
b.AA()
到这里关于Swift的初步学习就结束了,相信大家大概已经对IOS的Swfit语言有了一定的认识,接下来的日子让我们一起自学IOS开发吧。
IOS入门之Swift语言(一)的更多相关文章
- iOS开发系列--Swift语言
概述 Swift是苹果2014年推出的全新的编程语言,它继承了C语言.ObjC的特性,且克服了C语言的兼容性问题.Swift发展过程中不仅保留了ObjC很多语法特性,它也借鉴了多种现代化语言的特点,在 ...
- ios入门之c语言篇——基本函数——5——素数判断
参数返回值解析: 参数: m:int,需要判断的值: 返回值: 0:非素数 1:素数 函数解析: 注意:函数没有对输入进行判断,请自己屏蔽非法输入 int prime(int m) { int tem ...
- ios入门之c语言篇——基本函数——4——数值交换函数
一个常用函数,被整理出来,免得每次 都要写 参数返回值解析: 参数: *a:int*,需要交换值的第一个变量: *b:int*,需要交换值的第二个变量: 返回值: (无) 函数解析: swap(&am ...
- ios入门之c语言篇——基本函数——3——判断日期是一年的第几天
3.判断日期是一年的第几天 参数返回值解析: 参数: y:int,年份: m:int,月份 d:int,日期 返回值: sum:传入日期是当年的第几天: 函数解析: leapyear(y);判断y是不 ...
- ios入门之c语言篇——基本函数——2——判断闰年
2.闰年判断 参数返回值解析: 参数: a:int,年份: 返回值: 1:闰年: 0:非闰年: int leapyear(int a) { ==) { ; } ==) { ; } ==) { ; } ...
- ios入门之c语言篇——基本函数——1——随机数生成
1.随机数函数 参数返回值解析: 参数: a:int,数字范围最小值: b:int,数字范围最大值: 返回值: 1:闰年: 0:非闰年: 备注: a-b的绝对值不能超过int的最大值(65535); ...
- iOS开发系列--Swift进阶
概述 上一篇文章<iOS开发系列--Swift语言>中对Swift的语法特点以及它和C.ObjC等其他语言的用法区别进行了介绍.当然,这只是Swift的入门基础,但是仅仅了解这些对于使用S ...
- IOS开发之SWIFT进阶部分
概述 上一篇文章<iOS开发系列--Swift语言> 中对Swift的语法特点以及它和C.ObjC等其他语言的用法区别进行了介绍.当然,这只是Swift的入门基础,但是仅仅了解这些对于使用 ...
- Swift语言快速入门
Swift语言快速入门(首部同步新版官方API文档和语法的Swift图书,确保代码可编译,作者专家在线答疑,图书勘误实时跟进) 极客学院 编著 ISBN 978-7-121-24328-8 201 ...
随机推荐
- [BZOJ4200][Noi2015]小园丁与老司机
4200: [Noi2015]小园丁与老司机 Time Limit: 20 Sec Memory Limit: 512 MBSec Special JudgeSubmit: 106 Solved ...
- Java 应该跨四个平台
编程语言从属于操作系统,要统一,就要在根本处统一,要统一的是操作系统,而不是编程语言.你认为是苹果决定苹果树,还是苹果树决定苹果? 编程语言跨操作系统是错误的道路,你见过苹果长在桔子树上的吗?苹果长得 ...
- yoman 创建generator
yoman作为一个模板工具,能够创建自己的模板,下面具体介绍下. 首先 安装一个模板工具(npm install -g generator-generator),此工具会自动创建一些必要的文件.安装完 ...
- 解决IE6/IE7/IE8不支持before,after问题
对从事web开发的朋友来讲,低版本的IE永远是一个痛点,不支持最新技术(如css3,html5). 在现在web开发中使用图标字体已经很广泛,如Font Awesome,Bootstrap等,字体图片 ...
- Swing学习笔记1-----Swing组件类的层次
1. 从结构上划分 Swing 组件类分为两种,一种是JComponent类,一种是Windows类.其中windows类包含的是一些可以独立显示的组件,而JComponent类包含的是不可以独立显 ...
- Python之路Day15--JavaScript(一)
一.JavaScript简介 JavaScript是世界上最流行的脚本语言,因为你在电脑.手机.平板上浏览的所有的网页,以及无数基于HTML5的手机App,交互逻辑都是由JavaScript驱动的. ...
- JavaScript鼠标经过图片的放大镜效果
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Unity3D UGUI之fbx模型导入问题
在UI层添加了一个fbx的模型,但是在game模式和运行中无法看到这个fbx. Canvas上面有个Render Mode :Screen Space - Overlay.Screen Space ...
- 使用Dotfuscator 进行.Net代码混淆 代码加密的方法
混淆代码能在一定程度上放置代码被盗用,保护我们的知识产权 1.打开vs2012,选择工具-〉Dotfuscator Software Services 2.选择你需要混淆的DLL 文件,可以多选择 3 ...
- sqlserver sp模板
某公司内部的sp模板 create procedure [usp_my_procedure_name] as begin set nocount on; declare @trancount int; ...