// Playground - noun: a place where people can play

import UIKit

var age=100
//假设年龄不大于50的就会在这里断言,和之前的OC一样的
assert(age>50,"age must >50") //能够用a..b标识a到b之间的范围, //我们循环打印五次hello World var helloWorld="hello world" for i in 0..5
{
//这个循环的i从0開始到4结束。是不包含范围的最后一个的。 println(helloWorld) } //关于字符串的 var string1=""//代表一个空的字符串 var strin2=String()//代表初始化一个字符串,和上面的没有什么不论什么的差别。 if string1.isEmpty//推断假设这个是字符串类型就返回true,否则就返回false
{
/*do something*/ } //在这里这个String相当于OC的NSString 和NSMutableString
//假设我们定义了一个字符串,我们想遍历出来里面的字符,能够这种写 var string3="hello world" for Character in string3
{ println(Character)
} //使用countElements()能够获取字符串的字符的总数
var characterCount:Int=countElements(string3) //hasPrefix() hasSuffix()和之前的OC一样,都是推断开头和结尾是否存在字符,存在就返回true if string3.hasPrefix("hello")
{ }else
{ }
//使用uppercaseString把字符串里面的转换成大写lowercaseString把大写转换成小写 string3=string3.uppercaseString//把之前的字符串所有转换成大写 string3=string3.lowercaseString//把之前的字符串再次转换成小写 //Array相当于OC里面的NSArray和NSMutableArray,能够用[value,value,....]创建一个数组 //创建一个含有字符串的数组 var array1:String[]=["1","2","3"] //用count获取数组里面的个数
var arrayCount:Int=array1.count //使用isEmptry推断这个数组的个数是不是0 if array1.isEmpty
{
//数组个数为0的
}else
{
//数组个数不为0
} //再原来的数组里面加入一个新的元素。使用append() array1.append("4") //也能够使用+=在数组的最后加入新的元素 array1+="5" //还能够使用+=加入数组元素进去 array1+=["6","7","8"] //能够直接使用下标获取数组里面的值 var arrayValue=array1[0] //也能够直接设置相应下标的值 array1[0]="changed"
//直接给指定范围替换里面的值 array1[0..3]=["changed1","change2","changed3"] //使用insert(value,atIndex:index)插入一个新的值 array1.insert("change0",atIndex:0)//在0元素的地方插入一个字符串"changed0" //使用removeAtIndex()移除所相应位置的元素,返回删除的相应元素 var removedString=array1.removeAtIndex(0) //使用removeLast()移除数组里面的最后一个 array1.removeLast() //用for遍历 for string in array1
{
println(string) }
//假设想遍历时候,找到相应的索引,应该用enumerate for (index,value) in enumerate(array1){ println("index=\(index) value=\(value)")
} //使用count repeatedValue创建同样的类型 var array2=Int[](count:10,repeatedValue:10) var array3=Array(count:10,repeatedValue:20) //使用+号将两个数组合并 var array4=array2+array3

swift学习第四章的更多相关文章

  1. Java基础知识二次学习--第四章 异常

    第四章 异常处理   时间:2017年4月26日11:16:39~2017年4月26日11:28:58 章节:04章_01节 04章_02节 视频长度:20:46+01:16 内容:异常的概念 心得: ...

  2. C#高级编程 (第六版) 学习 第四章:继承

    第四章 继承 1,继承的类型 实现继承: 一个类派生于一个基类型,拥有该基类型所有成员字段和函数. 接口继承 一个类型只继承了函数的签名,没有继承任何实现代码.   2,实现继承 class MyDe ...

  3. 深度学习框架PyTorch一书的学习-第四章-神经网络工具箱nn

    参考https://github.com/chenyuntc/pytorch-book/tree/v1.0 希望大家直接到上面的网址去查看代码,下面是本人的笔记 本章介绍的nn模块是构建与autogr ...

  4. java并发学习--第四章 JDK提供的线程原子性操作工具类

    在了解JDK提供的线程原子性操作工具类之前,我们应该先知道什么是原子性:在多线程并发的条件下,对于变量的操作是线程安全的,不会受到其他线程的干扰.接下来我们就学习JDK中线程的原子性操作. 一.CAS ...

  5. Intel汇编语言程序设计学习-第四章 数据传送、寻址和算术运算-下

    4.3  和数据相关的操作符和伪指令 操作符和伪指令并非机器可执行的指令,相反,它们是由汇编器进行解释的.开发者可以使用一系列的MASM操作符或伪指令获取数据的地址以及大小等特征信息: OFFSET操 ...

  6. Swift学习(四)常量&变量&基础数据类型

    常量和变量 常量: 使用let关键词来声明一个常量 所指向的是一个特定类型的值,如数字10或者字符”hello”,常量的值是不能够被二次修改的 编程时使用常量能够让代码看起来更加安全和简洁! let ...

  7. Swift学习笔记四

    前面三篇笔记通过一些示例展示了Swift的一些特性,粗略地介绍了它的语法和特色,从这一篇笔记开始,将正式系统地介绍Swift的语法和特性了. Swift是一门为iOS和OSX开发准备的全新语言,但是它 ...

  8. C语言学习第四章

    今天学习C语言循环结构,为什么要用循环呢?因为有时候我们对一堆的数字进行重复的处理的时候要重复的编写一些相同或者差不多的代码,让程序显得很臃肿,而且写着也麻烦,如果用循环来写的话能简化很多,出错的话也 ...

  9. Artech的MVC4框架学习——第四章Model元数据的解析

    总结: 第一Model元数据是针对 数据类型的一种表述信息. 第二Model元数据作用:控制数据类型本身及其成员,通过相应的特性,在view中 为绑定的数据(Model)实现模版化的html呈现. 第 ...

随机推荐

  1. kettle 使用excel模板导出数据

    通过excel进行高速开发报表: 建设思路: 1.首先制订相关的execl模板. 2.通过etl工具(kettle)能够高速的 将数据库中的数据按excel模板导出成新的excel就可以. 当中ket ...

  2. hadoop(七) - hadoop集群环境搭建

    一. 前言: hadoop2.0已经公布了稳定版本号了,添加了非常多特性,比方HDFS HA.YARN等.最新的hadoop-2.4.1又添加了YARN HA 注意:apache提供的hadoop-2 ...

  3. [学习笔记—Objective-C]《Objective-C-基础教程 第2版》第十一章 属性

    11.1 使用属性值 @property float rainHandling; //表明此类具有float类型的属性,其名称为rainHandling 注意:属性的名称不必与实例变量名称同样. @s ...

  4. 项目中解决实际问题的代码片段-javascript方法,Vue方法(长期更新)

    总结项目用到的一些处理方法,用来解决数据处理的一些实际问题,所有方法都可以放在一个公共工具方法里面,实现不限ES5,ES6还有些Vue处理的方法. 都是项目中来的,有代码跟图片展示,长期更新. 1.获 ...

  5. 在APP开发设计中,为什么APP开发公司要慎用左右横滑设计?

    移动端屏幕越来越大,但用户对内容量的要求也水涨船高.如何在有限的屏幕内透出更多的内容,是设计师们研究的重点. 常用的内容拓展设计有:Y 方向 List 滑动.Z 方向 3D Touch .入口式内容折 ...

  6. Android 让系统自动生成缩略图并写入媒体库

    MediaStore.Video.Thumbnails.getThumbnail(ContentResolver cr, long origId, int kind, BitmapFactory.Op ...

  7. MySQL监控SQL及命中率脚本

    [root@hank-yoon scrips]# vi mysqlstat.sh​​​/export/servers/mysql/bin/mysqladmin -P3306 -uyoon -pyoon ...

  8. Aspose.Cells基础使用方法整理

    Aspose.Cells 插件,将web端数据以excel形式导出到客户端. 相关文档: https://blog.csdn.net/djk8888/article/details/53065416 ...

  9. node——将数据写入data.json防覆盖

    前续 1.读取data.json文件内容 2.判断是否是第一次读取data.json(第一次读取则data.json是没有的) 3.将data.json数据转为数组list 4.将写入数据加入数组li ...

  10. 8、Collaborative Metric Learning

    一.摘要: 文章的核心思想:是如何把Metric learning 和 CF结合起来从而达到更好的推荐效果. 提出了CML(Collaborative Metric Learning),其学习一个联合 ...