一.字符串的使用

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学习字符串、数组、字典的更多相关文章

  1. Swift学习—字符串&数组&字典

    字符串 OC和Swift中字符串的区别 在OC中字符串类型时NSString,在Swift中字符串类型是String OC中字符串@"",Swift中字符串"" ...

  2. Swift(一,创建对象,类型推导,基本运算,逻辑,字符串,数组,字典)

    swift用起来刚开始感觉有点怪怪的,但用了一段时间觉得还是挺好用的,哈哈.毕竟都是要有一个过程的嘛. 我就写一些自己在使用swift的时候的注意点吧,如有不正之处,还请指正! 一.在开发中优先使用常 ...

  3. [Swift]JSON字符串与字典(Dictionary)、数组(Array)之间的相互转换

    1.JSON字符串与字典(Dictionary)之间的相互转换 import Foundation //JSON字符串转换为字典(Dictionary) func getDictionaryFromJ ...

  4. Object-C 语法 字符串 数组 字典 和常用函数 学习笔记

    字符串 //取子字符串 NSString *str1=@"今天的猪肉真贵,200块一斤"; NSString *sub1=[str1 substringFromIndex:4]; ...

  5. Swift JSON字符串和字典以及数组的互转

    1.JSONString转换为字典 // JSONString转换为字典 func getDictionaryFromJSONString(jsonString:String) ->NSDict ...

  6. IOS NS 字符串 数组 字典 文件 动态 静态 操作

    ios 常用字符串的操作   //将NSData转化为NSString        NSString* str = [[NSString alloc] initWithData:response e ...

  7. oc字符串+数组+字典操作题目

    1. 判断中间目录是否存在 (10分) 比如 传入字符串 @"/home/qianfeng/oc.txt" 和 @"qianfeng" 返回:YES 传入字符串 ...

  8. Swift 循环、数组 字典的遍历

    import Foundation // 数组声明 var arr = [String]() // 数组循环添加项 ...{ arr.append("Item \(index)") ...

  9. swift学习之数组

    首先数组的定义:以有序的方式存储同样类型的值 (1)数组的简写(shorthand)语法 你能够通过Array<Element>,在这里,Element时数组存储元素的值的类型.也能够通过 ...

随机推荐

  1. SpriteBuilder中音频波长超过Timeline结尾的情况

    见如下图: 注意最后一个音频波长延续到Timeline结尾之后.表明这个音频文件播放长度超过Timeline(动画)播放的长度.这是否成为一个问题要视情况而定.而在这里无所谓. 如果节点所拥有的Tim ...

  2. 【一天一道LeetCode】#9. Palindrome Number

    一天一道LeetCode系列 (一)题目 Determine whether an integer is a palindrome. Do this without extra space. Some ...

  3. OpenCV kmeans代码

    代码:出处忘了 // // Example 13-1. Using K-means // // /* *************** License:************************* ...

  4. Android Studio Gradle Configuration Errors总结

    初次看到这个错误,我从下手Error:Configuration with name 'default' not found.  只知道这是由于android的grad项目构建的时候出现的错误,但是具 ...

  5. C# 创建Word项目标号列表、多级编号列表

    在Word文档中,对于有多条并列的信息内容或者段落时,我们常以添加项目标号的形式来使文档条理化,在阅读时,文档也更具美观性.另外,对于在逻辑上存在一定层级结构的内容时,也可以通过多级编号列表来标明文档 ...

  6. Configure the MySQL account associate to the domain user via MySQL Windows Authentication Plugin

    在此记录如何将之前一次做第三发软件在配置的过程. 将AD user通过代理映射到mysql 用户. 在Mysql官网有这样一段话: The server-side Windows authentica ...

  7. TCP / IP,HTTP

    大学学习网络基础的时候老师讲过,网络由下往上分为物理层.数据链路层.网络层.传输层.会话层.表示层和应用层.通过初步的了解,我知道IP协议对应于网络层,TCP协议对应于传输层,而HTTP协议对应于应用 ...

  8. 关于Linux和Unix的分析

    Linux操作系统即linux.  Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户.多任务.支持多线程和多CPU的操作系统.它能运行主要的UNIX工具软 ...

  9. Greenplum测试部署笔记

    按照官方Readme文档在Ubunut16.04上成功编译安装Greenplum最新代码(now:2017-11-12 21:40) 按照文档安装的过程中主要出现两个问题: 1.Root用户安装会卡在 ...

  10. Flex编码随笔

    1.CSS定义最好放在application里面. 2.数据源是数组数据时,最好把数组转换为ArrayCollection. 3.List.CheckBox等控件的HttpService Params ...