// 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. ASP.NET六大巨头——内置对象(1)

    ASP.NET提供了六个内置对象:Request.Response.Application.Session.Server和Cookie.这些对象收集当前应用程序请求.用户信息.响应浏览器信息,来完毕页 ...

  2. eclips 手机 offline

    [退出eclipse] [进入eclipse的工作区间] [删除 .metadata文件夹,确保 .metadata文件夹得隐藏文件也要删除] [重启eclipse,并重新导入你的工程]

  3. Spring MVC【入门】

    Spring MVC[入门]就这一篇! MVC 设计概述 在早期 Java Web 的开发中,统一把显示层.控制层.数据层的操作全部交给 JSP 或者 JavaBean 来进行处理,我们称之为 Mod ...

  4. Java中Array、List、Set、Map

    一.Java中数组 数组用来存放固定数量的同类元素,声明方法: T[] ref,T ref[],如int[] intAry; int intAry[].推荐用T[]的方式,后一种方式为兼容C++习惯写 ...

  5. oracle 索引优化之distinct

    11G R2环境: --DISTINCT测试前的准备drop table t purge;create table t as select * from dba_objects;update t se ...

  6. crawler4j详细配置

    控制器类必须传一个类型为CrawlConfig的参数,用于配置crawler4j.下面描述了一些关于配置的细节. 抓取深度 默认情况下没有抓取深度的限制.可以通过配置来限制深度,比如,你有个种子页面A ...

  7. 将查询到的数据导出到Excel终结版

    吐槽 最近新项目需要用到导出数据到Excel,试了试之前写的一篇博文,但是感觉那个不太好,主要原因是没能实现样式控制,今天我们就来介绍一种新的导出Excel方法,而且这种方法很轻量级,它利用xml生成 ...

  8. View的呈现(二)加载流程

    这块涉及到Code+Razor模板=>html[output流] 而这块的问题在于Razor最后生成了什么?--对象:一个类文件:eg:index.cshtml  => index_cst ...

  9. P3376 【模板】网络最大流(70)

    题目描述 如题,给出一个网络图,以及其源点和汇点,求出其网络最大流. 输入输出格式 输入格式: 第一行包含四个正整数N.M.S.T,分别表示点的个数.有向边的个数.源点序号.汇点序号. 接下来M行每行 ...

  10. python 3.x 学习笔记16 (队列queue 以及 multiprocessing模块)

    1.队列(queue) 用法: import queue q = queue.Queue() #先进先出模式 q.put(1) #存放数据在q里 作用: 1)解耦    2)提高效率 class qu ...