文档章节

02--swift之字符串

 飞翔的小二哈
发布于 2016/03/08 15:24
字数 578
阅读 4
收藏 0

2.字面量

var s = "hello"//字面量

var s1: String = "hello"


var c: Character = "a"

var s2: String = " 🐶"

print(s2)

3.初始化空字符串

var s = ""

var s1 = String()

print(s.isEmpty)

print(s1.isEmpty)

4.字符串的可变性

var s1 = "hello"

var s2 = s1+"world"

print(s2)

var s3 = "test"

s3.insert("t", atIndex: s3.startIndex)

print(s3)

5.字符串是值类型

值类型的赋值是拷贝,引用类型的赋值是地址传递,所有的结构体都是值类型的,所有的class类型的都是引用类型的

var s = "hello"

var s2 = s//copy,s,s2是两个

print(s)

print(s2)

s = "world"

print(s)

print(s2)

//引用类型

class person {

var age: Int!

}

var p1 = person()

p1.age = 20

var p2 = p1//同一个对象,两个名字

print(p1.age)

print(p2.age)


print("--------")

p1.age  = 21//改变p1的值,p2的值也会跟着改变

print(p1.age)

print(p2.age)

6.使用字符

var s = "hello"

//var c:Character

for c in s.characters{

print(c)

}


var c: Character = "A"//swift里面字符也是使用双引号

//用数组定义字符串

let cArray: [Character] = ["h","e","l","l","o"]

var s1 = String(cArray)

print(s1)

7.字符串的链接

var s1 = "hello"


var s2 = "world"

var s3 = s1+s2

print(s3)

s1+=s2

print(s1)

s1.appendContentsOf(s2)

print(s1)

var c: Character = "a"

s1.append(c)

print(s1)

8.字符串插值

var name = "tom"

var age = 20

var email = "tom@gmail.com"

var msg = "\(name),\(age),\(email)"

print(msg)

9.转义字符

\0(空字符),\\(反斜杠),\t(水平制表符),\n(换行)

10.字符串的计数

var s = "hello world"

print(s.characters.count)

11.访问和修改字符串

var s = "hello world"

print(s.startIndex)//起始位置

print(s.endIndex)// 结尾位置

print(s.startIndex.successor())//后面的

print(s.endIndex.predecessor())//前面的

print(s.startIndex.advancedBy(3))//某个索引位置的

遍历字符串

var s = "hello"

for index in s.characters.indices{

print(s[index])

}

12.插入字符

var s = "hello"

var c: Character = "A"

s.insert(c, atIndex: s.endIndex)

print(s)

var s2 = "world"

s.insertContentsOf(s2.characters, at: s.endIndex)


print(s)

var s3 = "tom"

s.insertContentsOf(s3.characters, at: s.endIndex.advancedBy(-3))//如果是startindex,则是3

print(s)

13.删除字符

var s = "hello"

//s.removeAtIndex(s.startIndex.advancedBy(3))

//print(s)//删除某个字符

//删除某个范围的字符

let range = s.startIndex..<s.startIndex.advancedBy(2)

s.removeRange(range)

print(s)

14.比较字符串

var s1 = "section1 basic"

var s2 = "section2 basic"

print(s1==s2)

print(s1 != s2)

print(s1.hasPrefix("section1"))//前缀

print(s2.hasSuffix("basic"))//后缀

15.字符串的unicode表示

var dog = "dog!!🐶"

for code in dog.utf8{

print(code)//8位表示

}

print("---------")

for code in dog.utf16{

print(code)//16位表示

}

print("---------")

for code in dog.unicodeScalars{

print(code)//标量表示

}



© 著作权归作者所有

粉丝 1
博文 27
码字总数 14888
作品 0
广州
私信 提问
字符串的介绍

字符串的介绍 字符串在任何的开发中使用都是非常频繁的 OC和Swift中字符串的区别 在OC中字符串类型时NSString,在Swift中字符串类型是String OC中字符串@"",Swift中字符串"" 使用 的原因 是一...

别情花如依丶
2016/12/21
5
0
06-Swift中的字符串

字符串的介绍 1 OC和Swift中字符串的区别 使用 String 的原因 String 是一个结构体,性能更高 NSString 是一个 OC 对象,性能略差 String 支持直接遍历 Swift 提供了 String 和 NSString 之间...

不孤独的美食家
2016/08/06
3
0
Swift笔记字符串

1.字符串的基本使用 OC与Swift中字符串的区别 OC中字符串类型是NSString,Swift中字符串类型是String OC字符串用@"",Swift用"" 使用String的原因 String 是一个结构体,性能更高(保存的直接是值...

大基本功
2017/12/17
0
0
[swift]-数组的使用

1----数组: > 1:是一串(有序的)(有相同类型元素)(集合) > 2:元素是(有序的),但是可以(重复出现) > 3:swift中数组的类型是Array类型,它是一个范型集合 2---两种数组:不可变数组...

XJDomain
2016/07/31
69
0
[swift]-类的介绍之一

1:swift也是一门面向对象开发的语言 2:面向对象的基础是类,类产生对象 3:在swift中,class用于定义类 01-swift类的定义格式: 02-swift创建对象 03-swift给类的属性两种方式赋值 > 1:直接赋...

XJDomain
2016/08/01
7
0

没有更多内容

加载失败,请刷新页面

加载更多

php7-internal 7 zval的操作

## 7.7 zval的操作 扩展中经常会用到各种类型的zval,PHP提供了很多宏用于不同类型zval的操作,尽管我们也可以自己操作zval,但这并不是一个好习惯,因为zval有很多其它用途的标识,如果自己...

冻结not
昨天
4
0
溢出\越界\泄漏

溢出:栈溢出是指函数中的局部变量造成的溢出,递归次数太多也会栈溢出 一是分配的大小超过栈的最大值,char a[99999999999999999]; 二是分配的大小没有超过最大值,但是接收的buff比新buff小...

SibylY
昨天
3
0
线性表-链式(c/c++实现)

在写数据的结构就是自己排兵布阵,根据客户的需求可增删功能,顺序与链式编程思想是一样的,两个比较只需要改变实现功能这一块。 线性表(链式)实现的三个步骤: 定义所需的功能(LinkList....

白客C
昨天
4
0
导览Linux系统文件系统类型

虽然对于普通用户来说可能并不明显,但在过去十年左右的时间里,Linux 文件系统已经发生了显著的变化,这使它们能够更好对抗损坏和性能问题。 如今大多数 Linux 系统使用名为 ext4 的文件系统...

老孟的Linux私房菜
昨天
4
0
Eureka重要对象简介

在进行分析EurekaClient和EurekaServer之间通信的源码之前,我们首先需要熟悉一下几个实体类 InstanceInfo 这个类代表着EurekaClient实例,客户端向服务端请求注册时就会携带着这个实例,这个...

Java学习录
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部