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开发中 ...
随机推荐
- Odoo10尝鲜:出勤登记
非常的cool,使用一个 联网的PAD 就能使用超级潮的 出勤登记功能 扫描 工牌条码,或者 从员工目录选择 员工, 例如 输入 PIN 密码, 防止"代打卡" ...
- 9x25 串口映射
duart /dev/ttyS0 /dev/ttyS0 usart1 /dev/ttyS2 /dev/ttyS1 usart2 /dev/ttyS3 ...
- angualrjs
$rootScope是angularJS中最接近全局作用域的对象.在$rootScope上附加太多业务逻辑并不是好主意,这与污染JavaScript的全局作用域是一样的. $scope对象就是一个普通 ...
- mysql主主复制(双主复制)配置步骤
以前我们介绍的都是主从复制,这里给各位介绍一个双主复制了,下面都希望两个主服务器数据自动复制的话可参考一下此文章. MySQL主主复制结构区别于主从复制结构.在主主复制结构中,两台服务器的任何一台 ...
- 图层的transform属性
Main.storyboard // // ViewController.m // 7A11.图层的transform属性 // // Created by huan on 16/2/4. // ...
- Controller将Model数据传给View层,View层应该如何处理?
首先,我们在Model层中添加一个Person类. namespace MVCTest.Models{ public class Person { public string ...
- java实验一 20135104刘帅
实验报告 一.实验目的与要求: 实验目的: 1. 使用JDK编译.运行简单的Java程序 2.使用Eclipse 编辑.编译.运行.调试Java程序 实验要求: 1.没有Linux基础的同学建议先学习 ...
- 封装getElementsByClassName()
function getElementsByClassName(node,classname){ if(node.getElementsByClassName){ ...
- HTTP协议状态码详解(HTTP Status Code)
转自:http://www.cnblogs.com/shanyou/archive/2012/05/06/2486134.html 使用ASP.NET/PHP/JSP 或者javascript都会用到 ...
- Magicodes.WeiChat——利用纷纭打造云日志频道
纷纭,是个免费的渠道集成工具.这里我就不多介绍了,右侧是飞机票:https://lesschat.com/ 在开发或者在运维情况下,我们经常需要查看并关注服务器端日志以确保程序是否健康运行.尤其是在微 ...