Swift入门篇-字符串和字符
今天主要是介绍一下字符串的用法 ,字符串的语法和object-c语法不太一样,但是思想是一样,就是写法不太一样。如果您对.net和java语法比较熟悉的话,那您几乎没有深压力。如果您对swift 基本类型不是清楚,请查阅。
Swift入门篇-基本类型(1)
Swift入门篇-基本类型(2)
Swift入门篇-基本类型(3)
一:创建空字符串
//-------------定义一个空字符串第一种方法
var str1="" //-------------定义一个空字符串第二种方法
var str2 = String()
运行结果
str1=
str2=
二:判断字符串是否为空 (isEmpty)
//-----------判断字符串是否为空
var str3:String = "" if str3.isEmpty { //isEmpty是字符串的一个属性,判断字符串是否为空
println("str3的值是空")
}
else{
println("str3的值不为空")
}
运行结果
str3的值是空
三:字符串的转义符
\0 空字符 \\ 反斜杠 \ t 制表符 \n 换行符 \r 回车符 \” 双引号 \’ 单引号
例子
//------------------换行符----------------
var strA = "Hello World \n 1"// \n是换行符
println("strA=\(strA)") //------------------双引号----------------
var strB = "\"双引号" // \" 是代表双引号
println("strB=\(strB)") //------------------单引号----------------
var strC = "\'单引号"// \' 代表单引号
println("strC=\(strC)")
运行结果
strA=Hello World
1
strB="双引号
strC='单引号
三:字符串拼接
1:多个字符串变量拼接用 + 来拼接
2:字符串变量和常量用+或 +=来拼接 组成新的字符串
例子:
//-----------多个字符串变量拼接 用 + 来拼接 var str4 = "hello"
var str5 = " swift"
var str6 = str4+str5 //字符串变量拼接
println("str6=\(str6)") //-----------字符串变量和常量用+或 +=来拼接
var str7="hello "
str7 += "swift" //字符串变量和字符常量拼接可以用+= 拼接
println("str7=\(str7)")
运行结果
str6=hello swift
str7=hello swift
4:字符串和占位变量 组成新的字符串
var a = 3 //定义一个整形变量
var strQ = "a = \(a)" // 字符串和占外变量,组成新的变量(占外变量表示\(变量))
println("\(strQ)")
运行结果
a = 3
5:字符串比较
1:字符串相等 == 2:前缀相等 hasPrefix() 3:后缀相等 hasSuffix()
例子
import Foundation var strA = "Hello"
var strB = "Hello" //-----------字符串相等 == -------
if strA == strB{
println("字符串-相等")
}
else{
println("字符串-不相等")
} //-----------字符串前缀相等 hasPrefix--------- if strA.hasPrefix("H"){
println("字符串前缀-相等")
}
else{
println("字符串前缀-不相等")
} //-----------字符串后缀相等 hasSuffix--------- if strA.hasSuffix("o"){
println("字符串后缀-相等")
}
else{
println("字符串后缀-不相等")
}
运行结果
字符串-相等
字符串前缀-相等
字符串后缀-相等
六:字符串 大小写转换
uppercaseString 大写
lowercaseString 小写
import Foundation var strA = "Hello" //-----------字符串大写转换
var strB = strA.uppercaseString //uppercaseString 字符串大写转换
println (strB) //------------字符串小写转换
var strC = strA.lowercaseString //lowercaseString 字符串转换小写
println(strC)
运行结果
HELLO
hello
七:字符
格式:
变量关键字和常量关键字 变量 : Character = 字符值 注意点:
字符值 必须用双引号括起来, 必须是一个字符
例子
var ch :Character = "c" // 字符值 必须用双引号,并且是一个字符
println("ch=\(ch)")
运行结果
ch=c
字符串和字符的关系:
字符串是由N个字符组成的,即字符串是字符的集合。
例子:
var str = "ABC" //字符串“ABC" 是有 三个字符组成的分别是 字符”A",字符“B",字符”C"
字符串遍历 (for in)
说明: for in 是一个遍历语句 1: for 后面跟临时变量 in 后面跟数组
2: 临时变量 不需要定义, 编译器成自动生成一个临时变量
3:for in 会遍历字符集合,然后把每个集合赋值临时变量
例子:
import Foundation var str = "ABC"
/*
1:str 是字符串变量 是字符集合
2:temp是临时变量
3:for in 会遍历 字符集合,然后把每个集合赋值临时变量temp */ for temp in str {
println(temp)
}
运行结果
A
B
C
字符和字符串拼接(+)
字符和字符串拼接,用+直接来拼接,组成新的字符串 (和字符串拼接用法一直)
例子
import Foundation var C:Character = "S" //定义C 是字符变量 var str = C + " hello" println(str )
运行结果
S hello
我回陆续把我学习到swift语言的知识写出来形成一个系列。由于是新语言,个人理解难免有不足,欢迎给我提出意见。也可以加我QQ 1436051108一起讨论,如果您有什么问题,也可以直接在QQ留言发给我,我看到之后第一时间回复您
最后总结一下。送上一直思维导图,作为文章的结束

Swift入门篇-字符串和字符的更多相关文章
- Swift入门篇-循环语句
今天早上一起来所有新闻都是报道荷兰5-1战胜西班牙,我一看没有搞错吧,顿时想都如果中国队vs荷兰队也不至于会输的怎么惨吧,难道是荷兰队开挂了,于是我看了一下昨天比赛的视频直播,还真是新闻报道的那样,顿 ...
- Swift入门篇-基本类型(2)
现在我也在学习Swift语言,常常去逛很多苹果社区和论坛,看到了圈子很多奇怪的现象,发现很多人都赶忙去翻译 Swift书籍 和 发布Swift的视频 .他们这种对新知识的探索精神我本人是很佩服的.但是 ...
- Swift入门篇-Hello World
提示:如果您使用手机和平板电脑看到这篇文章,您请在WIFI的环境下阅读,里面有很多图片, 会浪费很多流量. 博主语文一直都不好(如有什么错别字,请您在下评论)望您谅解,没有上过什么学的 最近这2天主要 ...
- Swift入门篇-闭包和函数
今天主要是给大家分享的是 swift中闭包的用法,我个人觉得闭包就是函数的简写方法,如果您函数不是很熟悉请查阅 swift入门篇-函数 1:函数类型 函数类型 var 变量 :(类型)->返回值 ...
- Swift入门篇-基本类型(1)
博主语文一直都不好(如有什么错别字,请您在下评论)望您谅解,没有上过什么学的 今天遇到了一个很烦的事情是,早上10点钟打开电脑,一直都进入系统(我的系统 mac OS X Yosemite 10.1 ...
- Swift入门篇-swift简介
潜水博客园很多年,闲来无事,聊一下自己的经历,语文不好(如有什么错别字,请您在下评论)望您谅解,没有上过什么学的 在前期 ios入门篇 -hello Word(1) 文章中介绍我这半年准备写一些ios ...
- Swift 学习- 04 -- 字符串和字符
// 字符串 和 字符 // 字符串 是有序的 Character (字符) 类型的值的集合, 通过 String 类型的集合 // swift 的 String 和 Character 类型提供了 ...
- Swift入门篇-集合
一:数组 一:可变数组 定义:数组使用有序列表存储相同类型的多重数据. 格式: 第一种格式 var 变量: 类型[] = [变量值,变量值,...] 第二种格式 var 变量 =[变量值,变量值,.. ...
- Swift入门篇-结构体
前面主要是介绍swift语言中基本类型的用法,今天给大家介绍的是swift的结构体的用法,swift中结构体的用法和其他语言的用法,还有不太一样,不过您多敲几遍,就可以理解结构体,结构体在ios开发中 ...
随机推荐
- Struts2的值栈和对象栈
ValueStack 如何得到值栈: 如何将对象存入值栈: 让值栈执行表达式来获得值: 在JSP中跳过栈顶元素直接访问第二层: 在JSP中访问值栈对象本身(而不是它们的属性) ActionContex ...
- c# 通过关键字查询
1:首先需要在前端显示界面View视图中添加查询按钮: <div> <div>@Html.NopLabelFor(model => model.IndividualNam ...
- delphi XE5下 andriod 广告图片的demo
试了一下,关于好几个广告界面,左右滚动的效果:用TabControl 加上定时器实现即可. 1.TTabControl外观 TTabControl的外观由属性TabPosition控制,可选项包括: ...
- select 练习2
group by :select 分组字段,聚合函数 from 表名 where 条件 group by 分组字段 having 过滤条件 select cno,avg(degree) from s ...
- 数独求解 DFS && DLX
题目:Sudoku 题意:求解数独.从样例和结果来看应该是简单难度的数独 思路:DFS 设置3个数组,row[i][j] 判断第i行是否放了j数字,col[i][j] 判断第i列是否放了j数字.squ ...
- php错误级别的设置方法
PHP在运行时, 针对严重程度不同的错误,会给以不同的提示. eg:在$a没声明时,直接相加,值为NULL,相加时当成0来算.但是,却提示NOTICE,即注意. 我们在开发中, 为了程序的规范性,把报 ...
- Python批量修改文件名
处理语料库时,有些文件名字很不规则,为了方便处理,同义按数字顺序修改名称,主要是用到os模块: import os def RenameFiles(srcdir): #将目录下所有的文件命名为数字开头 ...
- React与ES6(一)开篇介绍
React与ES6系列: React与ES6(一)开篇介绍 React和ES6(二)ES6的类和ES7的property initializer React与ES6(三)ES6类和方法绑定 React ...
- jquery_easyui 相关问题
1. datagrid点击title,无法进行客户端排序. 增加属性 data-options="singleSelect:true,collapsible:true,url:'/ViewS ...
- 『TCP/IP详解——卷一:协议』读书笔记——05
2013-08-19 22:35:57 2.6 PPP:点对点协议 PPP点对点协议修改了SLIP协议中的所有缺陷: 1. 在串联链路上封装IP数据报的方法.PPP即支持数据为8位&无奇偶检验 ...