Swift学习字符串、数组、字典
一.字符串的使用
let wiseWords = "\"I am a handsome\"-boy"
var emptyString = ""
if emptyString.isEmpty{
println("这是一个空值")
}
简单说明:isEmpty方法是用来判断字符串是否为空值的,之后会执行if语句中的println方法,因为emptyString是一个空的字符串。
注意:创建一个空的字符串有两种方法,一是如emptyString = "" ;另一种是通过字符串类实例化一个空的字符串 var emptyAnotherString = String().
假如我们想要遍历字符串中的每个字符,可以采用 for in,如:
for cha in "dog!"
{
println(cha)
}
通过playground可以看出有四个字符输出:分别是d、o、g、!.
如果想要获取一个字符串的字符数,可以利用countElements方法:
let unusualMenagerie = "Koala , Snail , Penguin , Dromedary "
println("unusualMenagerie has \(countElements(unusualMenagerie)) characters")
可以看到在playground中输出这么一段话:"unusualMenagerie has 36 characters".
字符串的大小写:
大写:uppercaseString
小写:lowercaseString
let normal = "Could u help m,please?"
let shouty = normal.uppercaseString
let small = normal.lowercaseString
此时shouty = "COULD U HELP M,PLEASE?"而small = "could u help m,please?"
二:数组
首先定义一个可变数组:
//数组
var arr = ["dog","cat","cow"]
可以知道arr数组中包含三个元素,分别是dog、cat、cow
这个时候如果想在原有的数组中再插入一条数据,可以采用如下的方法实现:
//插入
arr.insert("dog", atIndex: 0)
这条语句是在arr索引为0的位置插入dog值,此时的arr数组就有四个有效值,分别是dog、dog、cat、cow
移除数组中指定位置的值(假如移除索引为1处的值):
//移除
let sub = arr.removeAtIndex(1)
如果想要移除数组中最后一个元素的值:
//移除最后一个元素
let sub2 = arr.removeLast()
取出数组中的索引和对应的值:
//取索引和值
for (index,value) in enumerate(arr){
println("Item \(index + 1): \(value)")
}
可以在playground中清楚的看到打印结果如图示:

三:字典
字典类型写为字典<KeyType, valueType>,KeyType 可以用作字典键的数值类型,valueType 是 字典为那些键储存的数值类型。唯一的局限是 KeyType 必须是 hashable,基本类型(比如 String、Int、Double 和 Bool)都默认为是 hashable
初始化一个字典:
var animals : Dictionary<String,String> = ["dog":"狗", "cat":"猫" ,"cow":"牛"]
修改字典中某一个key对应的value有两种方式可以选择:
animals["dog"] = "这是一条狗"
animals.updateValue("小明", forKey: "perple")
其中updateValue(forKey:)的返回值是旧值
想要在原字典中添加一个键值对,可以直接以下面这种方式实现:
animals["perple"] = "人"
Swift学习字符串、数组、字典的更多相关文章
- Swift学习—字符串&数组&字典
字符串 OC和Swift中字符串的区别 在OC中字符串类型时NSString,在Swift中字符串类型是String OC中字符串@"",Swift中字符串"" ...
- Swift(一,创建对象,类型推导,基本运算,逻辑,字符串,数组,字典)
swift用起来刚开始感觉有点怪怪的,但用了一段时间觉得还是挺好用的,哈哈.毕竟都是要有一个过程的嘛. 我就写一些自己在使用swift的时候的注意点吧,如有不正之处,还请指正! 一.在开发中优先使用常 ...
- [Swift]JSON字符串与字典(Dictionary)、数组(Array)之间的相互转换
1.JSON字符串与字典(Dictionary)之间的相互转换 import Foundation //JSON字符串转换为字典(Dictionary) func getDictionaryFromJ ...
- Object-C 语法 字符串 数组 字典 和常用函数 学习笔记
字符串 //取子字符串 NSString *str1=@"今天的猪肉真贵,200块一斤"; NSString *sub1=[str1 substringFromIndex:4]; ...
- Swift JSON字符串和字典以及数组的互转
1.JSONString转换为字典 // JSONString转换为字典 func getDictionaryFromJSONString(jsonString:String) ->NSDict ...
- IOS NS 字符串 数组 字典 文件 动态 静态 操作
ios 常用字符串的操作 //将NSData转化为NSString NSString* str = [[NSString alloc] initWithData:response e ...
- oc字符串+数组+字典操作题目
1. 判断中间目录是否存在 (10分) 比如 传入字符串 @"/home/qianfeng/oc.txt" 和 @"qianfeng" 返回:YES 传入字符串 ...
- Swift 循环、数组 字典的遍历
import Foundation // 数组声明 var arr = [String]() // 数组循环添加项 ...{ arr.append("Item \(index)") ...
- swift学习之数组
首先数组的定义:以有序的方式存储同样类型的值 (1)数组的简写(shorthand)语法 你能够通过Array<Element>,在这里,Element时数组存储元素的值的类型.也能够通过 ...
随机推荐
- Mac OS X 10.8.4下面XZ Utils(*.tar.xz)压缩解压缩命令工具的安装
主要参考:http://bbs.chinaunix.net/thread-3610738-1-1.html 现在很多找到的软件都是tar.xz的格式的,xz 是一个使用 LZMA压缩算法的无损数据压缩 ...
- LDA实现
topic model本质上就一个套路,在doc-word user-url user-doc等关系中增加topic层,扩充为2层结构,一方面可以降维,另一方面挖掘深层次的关系,用户doc word ...
- CImage 对话框初始化时候显示透明 PNG
使用CImage的时候,发现显示出来的并不是透明背景的图片,而是白色背景的图片. 后发现原因如下: PNG图片的透明背景总是一片白色,后来才发现这其实是微软GDI+的设计问题,PNG图片是ARGB,使 ...
- Linux基础正则表达式字符汇整(characters)
RE 字符 意义与范例 ^word 意义:待搜寻的字串(word)在行首! 范例:搜寻行首为 # 开始的那一行,并列出行号 grep -n '^#' regular_express.txt word$ ...
- MIDle生命周期详解,以及工作原理
当MIDlet被应用程序管理器成功地初始化之后,就开始展开了它的生命周期.MIDlet的生命周期完全由应用程序管理器控制,也就是说,当MIDlet要从一个状态变成另外一个状态时,应用程序管理器会调用对 ...
- Struts优缺点
跟Tomcat.Turbine等诸多Apache项目一样,是开源软件,这是它的一大优点.使开发者能更深入的了解其内部实现机制. Struts开放源码框架的创建是为了使开发者在构建基于Java Serv ...
- JVM的运行原理以及JDK 7增加的新特性(一)
虚拟机(Virtual Machine) JRE是由Java API和JVM组成的.JVM的主要作用是通过Class Loader来加载Java程序,并且按照Java API来执行加载的程序. 虚拟机 ...
- 前端技术之_CSS详解第六天--完结
前端技术之_CSS详解第六天--完结 一.复习第五天的知识 a标签的伪类4个: a:link 没有被点击过的链接 a:visited 访问过的链接 a:hover 悬停 a:active 按下鼠标不松 ...
- Git的fast forward和no fast forward和 three way merge 以及squash(聚合)
github上上传了版本库https://github.com/ChuckGitMerge 包括merge和rebase 没时间画图,貌似也不太会用画图工具,先写了一个文字版本的 更新:2015年 ...
- docker的安装和技巧
工作了有一段时间,开发环境中需要docker环境,但是docker一直不算很熟,之前一直是利用yum安装,但是yum安装真的很费劲,所以总结了一些经验给大家: 1,利用yum直接安装 官网是直接给了y ...