小白如何进入IOS,答案就在这里

***对于进来看过我博客的博友们,请看一下最后面的几道题,觉得可以的可以自己私下做一下,有不懂的我们可以相互交流***

现在我来说一下我们IOS需要的基础,现在用的比较多的就是swift语言。

首先,你要有苹果系统,注意是苹果系统,而不是苹果,所以对于家境不太好的童鞋来说也不要气馁。

其次,你要有一个Xcode,而需要注意的就是Xcode版本要和我们的系统版本一致,因为现在更新换代快,所以对于版本的要求也会更高一点。

当你安装好Xcode好,点击进入,你会见到这样一个界面

大家看上面的这张图

  Get started with a playground:这个就是进入一个练习场,我们刚开始学习的时候就是在这里进行.

  Create a new Xcode project:这就是创建一个Xcode项目

  Check out an existing project:这就是搜索存在的项目

我们这次来说的就是第一个,进入练习场,开始我们学习swift之旅

第一节课:

  1 //: Playground - noun: a place where people can play
  2
  3 import UIKit
  4 /*********常量与变量的声明**********/
  5 let a = 5 //定义常量
  6 //a = 6  //常量不能修改
  7 var b = 5
  8 b = 6
  9 //swift中所有的基本类型都是值类型,包括string类型
 10 var c = b
 11 c
 12 b = 88
 13 c
 14 //swift中的类都是大写的
 15 //下面的常量声明是显式指定类型
 16 let i: Float = 5.5 //默认编译器推断的是double
 17
 18 //常用的类型string,character,bool,float,double,int
 19
 20 let flag = true
 21
 22 let str = "hello world"
 23 let ch: Character = "a"
 24
 25 //元祖(tuple)
 26 //元祖声明的语法就是一个括号,逗号分隔用来存放多个数据
 27 let t = (404,"not found")
 28 let t1 = (1,1,1,2,3,4)
 29 //通过下标来访问元祖
 30 t.0
 31 t.1
 32
 33 let t2 = (name: "CJ" ,age: 35.5)//不需要给每个成员都取名字
 34
 35 t2.name
 36 t2.age
 37 let t3: (name: String,age: Float) = ("cj2",46.6)
 38 t3.age
 39 t3.name
 40
 41 let t4: (String,Float) = ("aaaa",4)
 42 t4.0
 43 t4.1
 44
 45 let t5:(name: String, Float) = ("bbb",5)
 46 t5.1
 47
 48 let t6:(String,Float) = (name: "xxxx",age: 55)
 49 t6.0
 50 t6.1
 51 //t6.name //由于在声明的时候没有指定名字,所以不能访问
 52
 53 //下面的写法(声明的同时就赋值)不行,
 54 //let t8: (name: String = "aaa",age: Float = 222)
 55
 56 //string类型
 57
 58 let str1: String
 59
 60 str1 = "aaaa"
 61
 62 var  str2   = "bbbb"
 63 str2 = "cccc"
 64 str2 += "dddd"
 65 str2 = "abcdefg"
 66
 67 str2.characters.count //取字符长度
 68
 69 str2.startIndex
 70 str2.endIndex
 71 str2[str2.startIndex]
 72 //str2[str2.startIndex + 1]
 73
 74 str2.index(after: str2.startIndex)
 75 str2[str2.index(after: str2.startIndex)]
 76 str2.index(before: str2.endIndex)
 77
 78 str2.index(str2.startIndex, offsetBy: 3)
 79 str2[str2.index(str2.startIndex, offsetBy: 3)]
 80
 81 str2.index(str2.endIndex, offsetBy: -3)
 82
 83 str2.substring(to: str2.index(str2.startIndex, offsetBy: 3))
 84
 85 str2.substring(from: str2.index(str2.startIndex, offsetBy: 3))
 86
 87 str2.uppercased()
 88 str2.lowercased()
 89 str2.capitalized
 90
 91 str2.hasPrefix("abc") //是否有前缀(prefix)
 92 str2.hasSuffix("abc") //是否有后缀
 93 str2.hasSuffix("g")
 94 str2.hasSuffix("fg")
 95 str2.contains("de") // 是否包含
 96
 97 i
 98
 99 let str3 = "abc \(i * 5)"
100
101 //swift操作符基本与c#,java一样
102
103 let f = true
104 a
105
106 if f {
107     print("true")
108 }
109
110 if (a >= 5 )  {
111     print("da yu dengyu 5")
112 }  else if( a > 3) {
113
114 } else {
115
116 }
117
118 let age = 35
119 switch age {
120 case 25:
121     print("25sui")
122 case 35:
123     print("chenjun")
124 default:
125     print("fei 25")
126 }
127
128 Int.min
129 Int.max
130
131 switch age {
132 case 1...60:
133     print("suo you de zhengshu ")
134 default:
135     print("1...60zhiwai")
136 }
137
138
139 switch age {
140 case 1,20,35,60:
141     print("suo you de zhengshu ")
142 default:
143     print("1...60zhiwai")
144 }
145
146
147 let arr = [1,2,3,4,8,30,5,10]
148 for a in arr {
149     print(a)
150 }
151
152
153 for a in 0...3 {
154     print(arr[a])
155 }
156
157 var max = arr[0]
158 for item in arr {
159     if item % 2 != 0 && item > max {
160         max = item
161     }
162 }
163 max
164
165 var n = 3
166 while n < 10 {
167     n += 1
168     print(n)
169 }
170
171 n = 3
172 repeat {
173     print("xxx")
174      n += 1
175 } while  n < 10
176
177
178 /********  集合 Array,Dictionary,Set ***/
179
180 let arr2: Array<Int> = Array<Int>()
181 var arr3 = [1,2,3,3]
182 let arr4: Array<Int> = []
183
184
185 arr3[0]
186
187 arr3.append(5)
188 arr3.append(contentsOf: [6,7,8])
189 arr3
190 arr3 += [10,11]
191 arr3
192
193 //arr3.insert(contentsOf: <#T##Collection#>, at: <#T##Int#>)
194
195 //arr3.remove(at: <#T##Int#>)
196
197
198 var dic = ["a":"abc","b":"def"]
199 dic["a"]
200 dic["c"] = "ggg"
201 dic.count
202
203 for k in dic.keys {
204     print(k)
205 }
206
207 for v in dic.values {
208     print(v)
209 }
210
211 for (k,v) in dic {
212     print ("key is \(k) value is \(v)")
213 }
214
215
216 var s: Set<Int> = [1,2,3,4,4]
217
218 s.count
219 s.insert(2)
220
221 s.count
222
223 var s1: Set<Int> = [2,3,6,7]
224
225 let r1 = s.intersection(s1)
226 s.union(s1)
227
228
229
230 /*作业
231  1.求出一个字符串中从第三个字符后的所有子字符串
232  2.求出一个数组中所有偶数的和
233  3.求出两个Set的差
234  4.["127":[40,80,90],"130":[60,70,80]]这个字典代表2个班级所有的成绩,求出两个班级的平均分,结果用tuple表示,比如(70,70)
235
236  额外需要学习的
237  1.找出trim方法
238  2.学习switch没有讲的内容
239
240
241
24

今天这一节课就到这里,如果这些对你学习swift有作用的话,本人表示不胜荣幸!

时间: 2024-10-16 01:36:14

小白如何进入IOS,答案就在这里的相关文章

从小白开始学习iOS开发

从事iOS开发不经意间,已经两年过去了,记得当初看到OC是,我根本就不知道那些个东西是什么?从开始学习开机,到一个个英文开始,为了能找到工作,愣是耐下心去坚持看下去. 现在回想起来,很是庆幸我没有放弃,虽然我不会写文章但是总有那么一点东西,会在不经意的瞬间给人些许的帮助. 第一:基础 一定的编程经验 这里说的编程经验是有编程经验或会一门编程语言,对OOP有一定认识,最好是了解一些设计模式:但是这都不是必须的,因为我是一名体育生,在学校只是学习过flash,第一次用mac的时候都不会开机,Mac的

这可能是最详细的 iOS 学习入门指南(含书目/文档/学习资料)

1 零基础小白如何进行 iOS 系统学习 首先,学习目标要明确: 其次,有了目标,要培养兴趣,经常给自己一些正面的反馈,比如对自己的进步进行鼓励,在前期小步快走: 再次,学技术最重要的一点就是多动手. 推荐书目: <Objective-C 基础教程> <iOS 编程> <iOS 开发指南> 推荐两个开源的 APP:SegmentFault.懒人笔记 2 基础入门后,如何进行高级进阶 2.1 原理和基础:掌握扎实的原理和基础是进阶的必要条件 首先是语言.入门时候可能只要对

python基础-第五篇-5.2递归

又是一个阳光明媚的日子,小白看着刚刚从东边升起的太阳,感觉太阳爷爷也在向她打招呼,小白就不经的微笑起来!心想:今天又会学到什么有趣的东西呢?有些小期待,也有些小激动! 小刘来得比小白还早,两辆相视而笑打了一下招呼! 小刘:小白!你过来,让你思考一下这段代码是怎么个执行过程?就当拿来给你早上提提神,醒醒脑的吧? 小刘:我要去早会!你把这个好好想想,等下我回来的时候告诉我! 小白点点头,小白打量这段代码: def f1(): return 'f1' def f2(): r = f1() return

【同行说技术】iOS程序员从小白到大神必读资料汇总

在文章<iOS程序员从小白到大神必读资料汇总(一)>里面介绍了很多iOS入门学习的资料,今天小编就发几篇技术进阶的文章,快来看看吧! 一.iOS后台模式开发指南 这个教程会教你在什么时候怎么去用最常用的一些后台操作 二.iOS核心高级动画技巧 这是一篇在github上很受欢迎的对iOS开发高级动画技巧的翻译文,非常值得学习 三.iOS开发总结之代码规范 这篇文章整理了比较好的代码规范,对程序员的代码风格的塑造很有帮助! 四.Top 100 的 iOS app 都用到了哪些库 文章作者分析了美国

最全的iOS面试题及答案-转载

1. Object-c的类可以多重继承么?可以实现多个接口么?Category是什么?重写一个类的方式用继承好还是分类好?为什么? 答: Object-c的类不可以多重继承:可以实现多个接口,通过实现多个接口可以完成C++的多重继承:Category是类别,一般情况用分类好,用Category去重写类的方法,仅对本Category有效,不会影响到其他类与原有类的关系. 2. #import 跟#include 又什么区别,@class呢, #import<> 跟 #import””又什么区别?

iOS 程序员 6 级考试(答案和解释)

iOS 程序员 6 级考试(答案和解释) 我是前言 1. 下面的代码分别输出什么? @implementation Son : Father- (id)init { self = [super init]; if (self) { NSLog(@"%@", NSStringFromClass([self class])); NSLog(@"%@", NSStringFromClass([super class])); } return self;}@end 答案:都

史上最全的iOS面试题及答案

1.写一个NSString类的实现 + (id)initWithCString:(c*****t char *)nullTerminatedCString encoding:(NSStringEncoding)encoding; + (id) stringWithCString: (c*****t char*)nullTerminatedCString encoding: (NSStringEncoding)encoding { NSString  *obj; obj = [self alloc

iOS常见面试题汇总带详细答案

之前看了很多面试题,感觉要不是不够就是过于冗余,于是我将网上的一些面试题进行了删减和重排,现在分享给大家.(题目来源于网络,如有侵权,请联系apple公司) 1. Objective-C的类可以多重继承么?可以实现多个接口么?Category是什么?重写一个类的方法用继承好还是分类好?为什么? 答: Objective-C的类不可以多重继承.可以实现多个接口,通过实现多个接口可以完成C++的多重继承.Category是类别.一般情况重写一个类的方法用继承比较好,这样不会影响其他地方正常使用这个方

史上最全的iOS面试题及答案,且看且珍藏,错过就没有喽!

1. Object-c的类可以多重继承么?可以实现多个接口么?Category是什么?重写一个类的方式用继承好还是分类好?为什么? 答:Object-c的类不可以多重继承;可以实现多个接口,通过实现多个接口可以完成C++的多重继承;Category是类别,一般情况用分类好,用Category去重写类的方法,仅对本Category有效,不会影响到其他类与原有类的关系. 2. #import 跟#include 又什么区别,@class呢, #import<> 跟 #import””又什么区别?