文档章节

03-Swift 字符串

i
 iOS_Aaron
发布于 2015/01/21 16:49
字数 898
阅读 5
收藏 0

01-字符串的基本操作

// 字符串的字面量
var s = "Hello World"

// 空字符串的创建
var 空字符串1 = ""
var 空字符串2 = String()

// 字符串是否为空
if (s.isEmpty) {
    println("字符串为空")
} else {
    println("字符串有值")
}

// 字符串的修改
s = "Hello World !"

// 字符串的拼接
s += "!"

// 字符串的遍历
for 字符 in s {
    println(字符)
}

var 单个字符 :Character = "v"

// 字符串与字符的操作
var s1 = "Hello"
var s2 = "World"
var c1 : Character = "!"
var c2 : Character = "?"

var 字符串拼接字符 = s1 + String(c1)
var 字符串拼接字符串 = s1 + s2
var 字符拼接字符 = String(c1) + String(c2)
var 字符拼接字符串 = String(c1) + s1

// Unicode
let 闪亮的心 = "\u{1F496}"

// 字符串中字符的个数
countElements(s)

02-字符串的比较

// 字符串的比较
var a = "Hello World"
var b = "Hello World"

if (a == b) {
    println("两个字符串相等")
} else {
    println("两个字符串不相等")
}

// 字符串的前缀与后缀
var 地区列表 = [
    "上海市宝山区",
    "上海市徐汇区",
    "上海市普陀区",
    "上海市崇明岛",
    "大连市中山区",
    "大连市旅顺口区",
    "大连市小平岛",
    "深圳市南山区",
    "深圳市福田区",
    "舟山市普陀区",
    "塔什库尔干塔吉克自治县",
    "首尔市江南区",
    "鹤岗市南山区",
    "台北市中山区",
    "木垒哈萨克自治县",
    "芜湖市南陵县",
    "博尔塔拉蒙古自治州",
    "巴音郭楞蒙古自治州",
    "伊春市友好区",
    "东京都港区",
    "双鸭山市宝山区",
    "抚远县黑瞎子岛",
    "马里亚拉群岛",
    "舟山群岛",
    "千岛群岛",
    "关岛",
    "南宁市江南区",
    "新疆维吾尔自治区和田县"
]

var 区数 = 0
var 县数 = 0
var 自治州数 = 0
var 岛数 = 0
var 宝山区数 = 0
var 属上海数 = 0
var 属大连数 = 0

// 字符串数组
var 区列表 = [String]()
var 县列表 = [String]()
var 自治州列表 = [String]()
var 岛列表 = [String]()
var 宝山区列表 = [String]()
var 属上海列表 = [String]()
var 属大连列表 = [String]()

for 地区 in 地区列表 {
    // 字符串的后缀是否包含子串
    if (地区.hasSuffix("区")) {
        ++区数
        
        // 在字符串数组的尾部插入数据
        区列表.append(地区)
    }
    if (地区.hasSuffix("县")) {
        ++县数
        县列表.append(地区)
    }
    if (地区.hasSuffix("自治州")) {
        ++自治州数
        自治州列表.append(地区)
    }
    if (地区.hasSuffix("岛")) {
        ++岛数
        岛列表.append(地区)
    }
    if (地区.hasSuffix("宝山区")) {
        ++宝山区数
        宝山区列表.append(地区)
    }
    
    // 字符串的前缀是否包含子串
    if (地区.hasPrefix("上海")) {
        ++属上海数
        属上海列表.append(地区)
    }
    if (地区.hasPrefix("大连")) {
        ++属大连数
        属大连列表.append(地区)
    }
}

println("共有\(区数)个区:")
for 区 in 区列表 {
    println(区)
}

println("\n共有\(县数)个县:")
for 县 in 县列表 {
    println(县)
}

println("\n共有\(自治州数)个自治州:")
for 自治州 in 自治州列表 {
    println(自治州)
}

println("\n共有\(岛数)个岛:")
for 岛 in 岛列表 {
    println(岛)
}

println("\n共有\(宝山区数)个宝山区:")
for 宝山区 in 宝山区列表 {
    println(宝山区)
}

println("\n共有\(属上海数)个属上海:")
for 属上海 in 属上海列表 {
    println(属上海)
}

println("\n共有\(属大连数)个属大连:")
for 属大连 in 属大连列表 {
    println(属大连)
}

03-Unicode

var 问好 = "你好 hi 안녕하세요 \u{1F496}"

// UTF-8
println("UTF-8编码:")
for 代码单元 in 问好.utf8 {
    print("\(代码单元) ")
}

// UTF-16
println("\nUTF-16编码:")
for 代码单元 in 问好.utf16 {
    print("\(代码单元) ")
}

// UTF-32
println("\nUTF-32编码:")
for 万国码标量 in 问好.unicodeScalars {
    print("\(万国码标量.value) ")
}


© 著作权归作者所有

i
粉丝 0
博文 8
码字总数 5947
作品 0
海淀
私信 提问
Swift笔记字符串

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

大基本功
2017/12/17
0
0
字符串的介绍

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

别情花如依丶
2016/12/21
5
0
[swift]-字符串和oc字符串的对比使用

swift中字符串和oc字符串的区别: > 1:swift字符串的类型是String,oc 字符串的类型是NSString > 2:swift字符串的写法是"123",oc字符串的写法是@"123" swfit中字符串的类型为什么是String ,它......

XJDomain
2016/07/31
47
0
[swift3.0]搭建iOS项目的忽略文件处理和注意事项

贡献作者 -【XJDomain】 博客XJ: https://my.oschina.net/shengbingli/blog GitHub: https://github.com/lishengbing/XJQRCodeToolDemo 1-正确搭建项目的步骤: 01-:使用github或者git.Och......

XJDomain
2016/11/07
313
1
【swift3.0】【枚举定义的不同方式】

贡献作者 -【XJDomain】 博客XJ: https://my.oschina.net/shengbingli/blog GitHub直播地址: https://github.com/lishengbing/XJDomainLive XJ--01 > 定义字符串类型的枚举 使用一: XJ--02 ......

XJDomain
2016/12/15
21
0

没有更多内容

加载失败,请刷新页面

加载更多

DDD(五)

1、引言 之前学习了解了DDD中实体这一概念,那么接下来需要了解的就是值对象、唯一标识。值对象,值就是数字1、2、3,字符串“1”,“2”,“3”,值时对象的特征,对象是一个事物的具体描述...

MrYuZixian
16分钟前
0
0
数据库中间件MyCat

什么是MyCat? 查看官网的介绍是这样说的 一个彻底开源的,面向企业应用开发的大数据库集群 支持事务、ACID、可以替代MySQL的加强版数据库 一个可以视为MySQL集群的企业级数据库,用来替代昂贵...

沉浮_
今天
4
0
解决Mac下VSCode打开zsh乱码

1.乱码问题 iTerm2终端使用Zsh,并且配置Zsh主题,该主题主题需要安装字体来支持箭头效果,在iTerm2中设置这个字体,但是VSCode里这个箭头还是显示乱码。 iTerm2展示如下: VSCode展示如下: 2...

HelloDeveloper
今天
6
0
常用物流快递单号查询接口种类及对接方法

目前快递查询接口有两种方式可以对接,一是和顺丰、圆通、中通、天天、韵达、德邦这些快递公司一一对接接口,二是和快递鸟这样第三方集成接口一次性对接多家常用快递。第一种耗费时间长,但是...

程序的小猿
今天
4
0
Python机器学习之数据探索可视化库yellowbrick

背景介绍 从学sklearn时,除了算法的坎要过,还得学习matplotlib可视化,对我的实践应用而言,可视化更重要一些,然而matplotlib的易用性和美观性确实不敢恭维。陆续使用过plotly、seaborn,...

yeayee
今天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部