Swiftly语言学习1
单纯值:
1.let常量声明,var声明变量(同时宣布福值,编译器会自己主动判断出类型)
var myVariable = 42
myVariable 50
let myConstant = 42
let implicitInteger = 70
let implicitDouble = 70.0
let explicitDouble:Double = 70
声明类型时在“量”后面加上“:”然后写上类型的名字。
(值永远不会隐式转换,须要转换请显示转换“类型(量)”)
更简单的办法将值转换成字符串:\(量)
let apples = 3
let oranges = 5
let appleSummary = "I have \(apples) apples."
let fruitSummary = "I have \(apples + oranges) pieces of fruit"
2.“[]”创建数组和字典,key或者下标取值
var shoppingList = ["catfish","water","tulips","blue paint"]
shoppingList[1] = "bottle of water"
var occupations = ["Malcolm":"Captain","KayLee":"Mechanic"]
occupations["Jayne"] = "Public Relations"
空数组和空字典声明
let emptyArray = String[]()
let emptyDictionary = Dictionary<String,Float>()
假设类型信息能够别判断出来。你能够用[]和[:]来创建空数组和空字典,就想你声明变量或者给函数传递參数的时候一样
shoppingList = []
控制流
1.if,switch进行条件操作。for-in,for,while,do-while进行循环(包裹条件和循环变量括号能够省略。可是语句体的大括号是必须的)
let individualScores = [75,43,103,87,12]
var teamScore = 0
for score in individualScores{
if score>50{
teamScore += 3
}
else
{
teamScore += 1
}
}
if语句的条件必须是布尔值,一个可选的值可能是一个详细的值或者是nil。表示值缺失。在类型后面加上一个问号来标记这个变量的值是可选的。
var optionalString : String? = "Hello"
optionalString == nil
var optionalName:String?="John Appleseed"
var greeting = "Hello!"
if let name = optionalName{
greeting = "Hello, \(name)"
}
switch支持随意类型的数据以及各种比較操作
let vegetable = "red pepper"
switch vegetable{
case "celery":
let vegetableComment = "Add some raisins and make ants on a log."
case "cucumber","watercress":
let vegetableComment = "That would make a good tea sandwich."
case let x where x.hasSuffix("pepper"):
let vegetableComment = "Is it a spicy\(x)?
"
default:
let vegetableComment = "Everything tastes good in soup."
}
使用for - in 来遍历字典。需呀两个变量来表示每一个键值对
let interestingNumbers = {
"Prime":[2,3,5,7,11,13],
"Fibonacci":[1,1,2,3,5,8],
"Square":[1,4,9,16,25],
]
var largest = 0
for(kind,numbers) in interestingNumbers{
for number in numbers{
if number > largest{
largest = number
}
}
}
largest
var n = 2
while n < 100{
n = n*2
}
var m = 2
do{
m = m*2
}while m < 100
var firstForLoop = 0
for i in 0...3{
firstForLoop += i
}
var secondForLoop = 0
for var i= 0;i < 3;++i{
secondForLoop += 1
}
版权声明:本文博主原创文章,博客,未经同意,不得转载。
Swiftly语言学习1的更多相关文章
- C语言学习 第八次作业总结
本次作业其实没有新的内容,主要就是复习上一次的一维数组的相关内容.冯老师布置了5道题目,其中涉及到一些比较简单的排序或者是查找的方法.因为数据很少,所以直接使用for循环遍历就可以了. 关于本次作业, ...
- C语言学习 第七次作业总结
C语言学习 第七次作业总结 数组可以分为数组和多下标数组(在传统的国内C语言书本中,将其称为二/多维数组). 数组名称 在之前的课程中,大家应该都有印象,对于int a这样的定义,会为变量 a 声明一 ...
- 技能收获与C语言学习
你有什么技能比大多人(超过90%以上)更好? 我会的东西很多,喜欢的东西太多,但是很遗憾广而不专,会而不精.学了很多东西我都是为了娱乐,因为以前我们那里过于强调学习,很多爱好也都被扼杀在摇篮里.我觉得 ...
- 一份关于Swift语言学习资源的整理文件
一份关于Swift语言学习资源的整理文件 周银辉 在这里下载 https://github.com/ipader/SwiftGuide
- go语言学习笔记
Go语言学习基本类型Bool 取值范围:true,false (不可以用数字代替)Int/uint 根据平台可能为32或64位int8/uint8 长度:1字节 取值范围-128~127/0~255b ...
- 20155206赵飞技能获取经验,C语言学习感想与对JAVA的学习目标
自己较强的技能获取经验. 1:实话实说我自己是没有哪个技能可以超过90%的人的,只有自认为做的还可以的一些事情,例如打篮球,office软件的应用,一百米跑.至于其他方面就是很平庸了. 2:经验主要有 ...
- HTML语言学习笔记(会更新)
# HTML语言学习笔记(会更新) 一个html文件是由一系列的元素和标签组成的. 标签: 1.<html></html> 表示该文件为超文本标记语言(HTML)编写的.成对出 ...
- 20155229-付钰涵-分析自我技能延展到c语言学习状况
我的小技能 我记得幼儿园时表演的舞蹈,也记得从水彩到素描的学习,还记得小学和初中获得的钢琴省级奖项. 舞蹈止于一年级,绘画止于三年级,钢琴从学前班到高一那十年的时间里有过断续. 03年-04年的那个冬 ...
- linux 下C语言学习路线
UNIX/Linux下C语言的学习路线.一.工具篇“公欲善其事,必先利其器”.编程是一门实践性很强的工作,在你以后的学习或工作中,你将常常会与以下工具打交道, 下面列出学习C语言编程常常用到的软件和工 ...
随机推荐
- C++ 习题 输出日期时间--友元类
Description 设计一个日期类和时间类,编写display函数用于显示日期和时间.要求:将Time类声明为Date类的友元类,通过Time类中的display函数引用Date类对象的私有数据, ...
- Mono for Android开发调研笔记
安装完Mono for Android(简称:MonoDroid)之后,可以用MonoDevelop或Visual Studio来开发Mono for Android应用程序:目前只能在模拟器上调试和 ...
- WebxFrameworkFilter 请求响应过程
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvTFRpYW5jaGFv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA ...
- Channel Allocation (poj 1129 dfs)
Language: Default Channel Allocation Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 12 ...
- ASP.NET5
ASP.NET5 2015年11月30日, ASP.NET 5 RC1 已经发布,本文尝试了一下ASP.NET5项目的创见一发布到IIS.开发环境,win10 64位,visual studio201 ...
- ASP.NET2.0组件控件开发视频 初体验
原文:ASP.NET2.0组件控件开发视频 初体验 ASP.NET2.0组件控件开发视频 初体验 录了视频,质量不是很好,大家体验下.我会重新录制的 如果不清楚,可以看看http://v.youku. ...
- yum 安装时错误 Errno 14 Couldn't resolve host 解决办法(转)
在安装mlocate的时候发现一直报错,错误内容大致如下 Downloading Packages:http://mirrors.163.com/centos/6.5/os/i386/Packages ...
- Swing开发界面时的一个bug复盘
问题:QA突然发个截图说一个Dialog上展示的东西变形了 分析:不理解,什么也没做,怎么会变形,刚刚我用的时候还正常.看看代码,的确什么也没更改:在本地测一下,也没有问题:baidu,bing,st ...
- JAVA学习课第五 — IO流程(九)文件分割器合成器
文件分割器 private static final int SIZE = 1024 *1024; public static void splitFile(File file) throws IOE ...
- mbed列--基于飞思卡尔FRDM KL25Z鼠标设计的高速实现
========================================================== 原创文章转载请注明:blog.csdn.net/guo8113 ========= ...