基本了解了变量的创建和基础数据类型,但是在开发中用得最多的还是字符串。那什么是字符串呢?

Swift 的String类型表示特定序列的Character(字符) 类型值的集合,它是值类型具有可变性

Swift 的字符串和字符类型是全然兼容 Unicode 标准的

1、定义一个String类型变量

let stringTest = "String test"   //定义一个stringTest String类型变量 其值为String test
let stringTest: String = "String test" //和上面意思一样
let stringTest = String() //定义一个stringTest String类型变量 其值为空字符串
let stringTest = "" //同上

也能够通过插值的方式:\()

let inta = 1

let stringTest = "\(inta)"

注意插值方式不能包括 “ 和 \ 而且不能包括回车或换行

2、字符串操作 +

let stringTest = "my test "

stringTest += "you test"    //stringTest的值为my test you test

也能够用+操作字符,比如

let stringTest = "my test"

let chaTest: Character = "y"

let result = stringTest + chaTest      //值为 my testy

3、字符串比較

因为它是值类型,那就简单啦 用 ==  就可以。

还能够比較字符串的前缀或者后缀相等:hasPrefix/hasSuffix

4、字符串字面量

let stringTest = "my test"   //当中"my test"就是一个字面量

字符串字面量能够包括下面特殊字符:



转义字符\0(空字符)、\\(反斜线)、\t(水平制表符)、\n(换行符)、\r(回车符)、\"(双引號)、\'(单引號)。

单字节 Unicode 标量,写成\xnn,当中nn为两位十六进制数。

双字节 Unicode 标量,写成\unnnn,当中nnnn为四位十六进制数。

四字节 Unicode 标量。写成\Unnnnnnnn,当中nnnnnnnn为八位十六进制数。

5、字符串函数介绍

a 推断字符串是否为空  stringTest.isEmpty  这是个属性 返回Bool值

b 推断字符串长度 全局函数 countElements比如countElemets(stringTest)

c hasPrefix/hasSuffix方法来检查字符串是否拥有特定前缀/后缀比如 let stringTest = "abc_123";stringTest.hasPrefix("abc")    //将返回true

d uppercaseString和lowercaseString属性来訪问大写/小写版本号的字符串

...还有非常多

【Swift】学习笔记(三)——字符和字符串的更多相关文章

  1. swift笔记 (三) —— 字符和字符串

    字符串和字符 苹果要是不提供了unicode的字符串和字符,那就是他们公司全部人的脑袋都被门夹过 他自己家都要发非常多国家的版本号的软件,怎么可能不用unicode呢 此处略去30字... 这里能够拿 ...

  2. Swift 学习笔记 (三) 之循环引用浅析

    原创:转载请注明出处 110.自动引用计数实践 下面的例子展示了自动引用计数的工作机制.例子以一个简单的Person类开始,并定义了一个叫name的常量属性: class Person {     l ...

  3. 嵌入式Linux学习笔记(三) 字符型设备驱动--LED的驱动开发

    在成功构建了一个能够运行在开发板平台的系统后,下一步就要正式开始应用的开发(这里前提是有一定的C语言基础,对ARM体系的软/硬件,这部分有疑问可能要参考其它教程),根据需求仔细分解任务,可以发现包含的 ...

  4. Swift学习笔记三

    协议和扩展 在Objective-C中,协议是很常见也非常重要的一个特性,Swift中也保留了协议,语法略有变化. 用protocol关键字声明一个协议: protocol ExampleProtoc ...

  5. Oracle学习笔记三 SQL命令

    SQL简介 SQL 支持下列类别的命令: 1.数据定义语言(DDL) 2.数据操纵语言(DML) 3.事务控制语言(TCL) 4.数据控制语言(DCL)  

  6. Java IO学习笔记三

    Java IO学习笔记三 在整个IO包中,实际上就是分为字节流和字符流,但是除了这两个流之外,还存在了一组字节流-字符流的转换类. OutputStreamWriter:是Writer的子类,将输出的 ...

  7. 学习笔记(三)--->《Java 8编程官方参考教程(第9版).pdf》:第十章到十二章学习笔记

    回到顶部 注:本文声明事项. 本博文整理者:刘军 本博文出自于: <Java8 编程官方参考教程>一书 声明:1:转载请标注出处.本文不得作为商业活动.若有违本之,则本人不负法律责任.违法 ...

  8. VSTO学习笔记(三) 开发Office 2010 64位COM加载项

    原文:VSTO学习笔记(三) 开发Office 2010 64位COM加载项 一.加载项简介 Office提供了多种用于扩展Office应用程序功能的模式,常见的有: 1.Office 自动化程序(A ...

  9. Swift学习笔记(一)搭配环境以及代码运行成功

    原文:Swift学习笔记(一)搭配环境以及代码运行成功 1.Swift是啥? 百度去!度娘告诉你它是苹果最新推出的编程语言,比c,c++,objc要高效简单.能够开发ios,mac相关的app哦!是苹 ...

随机推荐

  1. PYTHON代理IP

    import urllib.request url = 'http://www.whatismyip.com.tw/' proxy_support = urllib.request.ProxyHand ...

  2. Java语言中的协变和逆变(zz)

    转载声明: 本文转载至:http://swiftlet.net/archives/1950 协变和逆变指的是宽类型和窄类型在某种情况下的替换或交换的特性.简单的说,协变就是用一个窄类型替代宽类型,而逆 ...

  3. STL模板整理 pair

    pair pair是一种模板类型,其中包含两个数据值,两个数据的类型可以不同.如果一个函数有两个返回值的话,如果是相同类型,就可以用数组返回,如果是不同类型,就可以自己写个struct ,但为了方便就 ...

  4. poj2253 最短路变形

    题目连接:http://poj.org/problem?id=2253 Description Freddy Frog is sitting on a stone in the middle of a ...

  5. 使用selenium模拟知网登录

    之前都是用phantomjs和selenium模拟浏览器动作的,后来phantomjs不再更新,就转用chrome了 本次模拟登录的网站是中国知网http://login.cnki.net/login ...

  6. 2016noipday1t1玩具迷题结题报告

    经常读这个代码有益于比赛时想起一些思路.... day1t1,洛谷dalao称之为水题...??然后我去年还是没拿到分,就这个,我还就写了40%的数据,AC到40,然而这不是关键,注释了freopen ...

  7. [Baltic2003] Gem

    [Baltic2003]Gem Time Limit: 2 Sec  Memory Limit: 64 MBSubmit: 501  Solved: 320[Submit][Status][Discu ...

  8. 【并查集】bzoj1015 [JSOI2008]星球大战starwar

    倒着处理删点,就变成了加点,于是并查集. #include<cstdio> using namespace std; #define N 400001 int fa[N],kill[N], ...

  9. 5.9 j(java学习笔记)强软弱虚引用及WeakHashMap、IdentityHashMap、EnumMap

    一.引用分类 强:运行垃圾回收机制后也不回收,程序出现内存溢出也不回收. 软:在垃圾回收机制运行时判断内存是否已满,如果内存已满则回收,内存充足则不回收. 弱:垃圾回收机制运行后不论内存是否充足都会立 ...

  10. Scala实战高手****第13课:Scala模式匹配实战和Spark源码鉴赏

    package com.dt.spark.scala.bascis class Dataframework case class Computerframework (name:String,popu ...