Swift语言中字符串相关的基本概念解析_Swift

Swift 的字符是一个单一的字符串文字并且是字符数据类型。下面是一个简单的例子,使用了两种字符常量:

复制代码 代码如下:

import Cocoa

let char1: Character = "A"
let char2: Character = "B"

println("Value of char1 \(char1)")
println("Value of char2 \(char2)")

当上述代码被编译和执行时,它产生了以下结果:

Value of char1 A
Value of char2 B

如果尝试存储多个字符到字符类型的变量或常量,那么 Swift 是不会允许的。试着键入下面的示例到 Swift Playground,在编译之前,就已经会得到一个错误。

复制代码 代码如下:

import Cocoa

// Following is wrong in Swift
let char: Character = "AB"

println("Value of char \(char)")

空字符变量
不可能创建一个空的字符变量或常量,这将有空值。下面的语法是不可能的:

复制代码 代码如下:

import Cocoa

// Following is wrong in Swift
let char1: Character = ""
var char2: Character = ""

println("Value of char1 \(char1)")
println("Value of char2 \(char2)")

从字符串访问字符
当讨论 Swift 的字符串,字符串表示的字符值按指定顺序的集合。因此,我们可以从给定字符串通过 for-in 循环来遍历字符串以访问单个字符:

复制代码 代码如下:

import Cocoa

for ch in "Hello" {
   println(ch)
}

当上述代码被编译和执行时,它产生了以下结果:

H
e
l
l
o

使用字符连接字符串
下面的例子演示了 Swift 字符如何与字符串连接。

复制代码 代码如下:

import Cocoa

var varA:String = "Hello "
let varB:Character = "G"

varA.append( varB )

println("Value of varC  =  \(varA)")

当上述代码被编译和执行时,它产生了以下结果:

Value of varC Hello G

Swift 字符串是字符有序集合,如“Hello, World!”,它们是由 Swift 的 String 数据类型表示,这也代表字符类型值的集合。

创建字符串
可以通过使用一个字符串文字或创建String类的一个实例来创建一个字符串,如下:

复制代码 代码如下:

import Cocoa

// String creation using String literal
var stringA = "Hello, Swift!"
println( stringA )

// String creation using String instance
var stringB = String("Hello, Swift!")
println( stringB )

当上述代码被编译和执行时,它产生了以下结果:

Hello, Swift!
Hello, Swift!

空字符串
可以通过使用一个空字符串或创建 String 类的一个实例来创建一个空的字符串,如下所示。还可以检查一个字符串是否为空,使用布尔属性 isEmpty。

复制代码 代码如下:

import Cocoa

// Empty string creation using String literal
var stringA = ""

if stringA.isEmpty {
   println( "stringA is empty" )
} else {
   println( "stringA is not empty" )
}

// Empty string creation using String instance
let stringB = String()

if stringB.isEmpty {
   println( "stringB is empty" )
} else {
   println( "stringB is not empty" )
}

当上述代码被编译和执行时,它产生了以下结果:

stringA is empty
stringB is empty

字符串常量
可以指定字符串是否可以修改(或突变),通过将其分配给一个变量,或者通过将其使用 let 关键字分配为常量,如下图所示:

复制代码 代码如下:

import Cocoa

// stringA can be modified
var stringA = "Hello, Swift!"
stringA + = "--Readers--"
println( stringA )

// stringB can not be modified
let stringB = String("Hello, Swift!")
stringB + = "--Readers--"
println( stringB )

当上述代码被编译和执行时,它产生了以下结果:

Playground execution failed: error: <EXPR>:10:1: error: 'String' is not convertible to '@lvalue UInt8'
stringB + = "--Readers--"

字符串插值
字串转换符号是一种通过包括字符串文字内的值来构造的常量,变量,文本和表达式来组合一个新的字符串值。

每个项目(变量或常量),插入到字符串被包裹在一对括号内, 一个反斜杠前缀。下面是简单的例子:

复制代码 代码如下:

import Cocoa

var varA   = 20
let constA = 100
var varC:Float = 20.0

var stringA = "\(varA) times \(constA) is equal to \(varC * 100)"
println( stringA )

当上述代码被编译和执行时,它产生了以下结果:

20 times 100 is equal to 2000.0

字符串连接
可以使用+运算符来连接两个字符串或字符串和字符,或两个字符。下面是一个简单的例子:

复制代码 代码如下:

import Cocoa

let constA = "Hello,"
let constB = "World!"

var stringA = constA + constB

println( stringA )

当上述代码被编译和执行时,它产生了以下结果:

Hello,World!

字符串长度
Swift 中字符串没有 length 属性,但可以使用全局count()函数来计算字符串中的字符数。下面是一个简单的例子:

复制代码 代码如下:

import Cocoa

var varA   = "Hello, Swift!"

println( "\(varA), length is \(count(varA))" )

当上述代码被编译和执行时,它产生了以下结果:

Hello, Swift!, length is 13

字符串比较
可以使用 == 操作符两个比较两个字符串变量或常量。下面是一个简单的例子:

复制代码 代码如下:

import Cocoa

var varA   = "Hello, Swift!"
var varB   = "Hello, World!"

if varA == varB {
   println( "\(varA) and \(varB) are equal" )
} else {
   println( "\(varA) and \(varB) are not equal" )
}

当上述代码被编译和执行时,它产生了以下结果:

Hello, Swift! and Hello, World! are not equal

Unicode字符串
可以通过遍历在 UTF8 和 UTF16 属性访问字符串的 UTF-8 和 UTF-16 表示,如下面的示例:

复制代码 代码如下:

import Cocoa

var unicodeString   = "Dog"

println("UTF-8 Codes: ")
for code in unicodeString.utf8 {
   print("\(code) ")
}

print("\n")

println("UTF-16 Codes: ")
for code in unicodeString.utf16 {
   print("\(code) ")
}

当上述代码被编译和执行时,它产生了以下结果:

UTF-8 Codes:
68 111 103 226 128 188 240 159 144 182
UTF-16 Codes:
68 111 103 8252 55357 56374

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索字符串
swift
swift 解析json字符串、c语言解析json字符串、c语言解析xml字符串、c语言解析字符串、纯c语言解析xml字符串,以便于您获取更多的相关知识。

时间: 2024-10-10 21:20:28

Swift语言中字符串相关的基本概念解析_Swift的相关文章

Swift语言中的一些访问控制设置详解_Swift

限制访问代码块,模块和抽象通过访问控制来完成.类,结构和枚举可以根据自己的属性,方法,初始化函数和下标来通过访问控制机制进行访问.常量,变量和函数的协议限制,并允许通过访问控制来访问全局和局部变量.应用于属性,类型及函数的访问控制可以被称为"实体". 访问控制模型是基于模块和源文件的. 模块定义为代码分配一个单独的单元,并且可以使用import 关键字导入.源文件被定义为一个单一的源代码文件,模块可访问多种类型和函数. 三种不同的访问级别是由 Swift 语言提供.它们分别是 Publ

Swift编程中的switch...case语句实例解析_Swift

Swift中的switch...case语句可以判断对象类型, Objective-C中则必须是整数. 不可以穿透,可以不写break, var rank = "A" switch rank{ case "A": //相当于if print("优") case "B": // 相当于else if print("优") case "C": // 相当于else if print(&quo

Swift语言中的函数学习教程_Swift

函数是一个组织在一起语句集合,以执行特定任务.Swift 函数类似于简单 C 函数以及复杂的 Objective C 语言函数. 它使我们能够通过函数调用内部的局部和全局参数值. 像其他任何语言一样 swift 函数也遵循相同的步骤. 函数声明:它告诉编译器有关的函数的名称,返回类型和参数. 函数定义:它提供函数的实际主体. Swift 函数包含参数类型和返回类型. 函数定义在Swift 语言中函数是由 "func" 关键字来定义.当一个新定义函数时,它可能需要一个或几个值作为函数输入

c语言中字符串分割函数及实现方法_C 语言

1.问题引入 自己在写一个linux下的模拟执行指令的时候,遇到了输入"cat a.c",要将该字符串分解成cat和a.c两个单独的字符串,虽然知道有strtok的存在,但是想自己尝试写一下,于是就自己写了一个,不过总是遇到这样或那样的问题,虽然最后调通了,不过确浪费了不少时间:后来作业交上去以后又仔细阅读了strtok函数,发现原来linux下已经改成strsep,所有在这里就写一下自己所走的过程. 2.自己写的字符串分割函数:用于分割指令,比如cat a.c最后会被分割成cat和a

C语言中字符串和数字的相互转换实现代码

以下是对C语言中字符串和数字的相互转换实现代码进行了分析介绍,需要的朋友可以参考下   1.数字转换为字符串sprintf 跟printf 在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命令行上输出. sprintf 是个变参函数,定义如下: int sprintf( char *buffer, const char *format [, argument] ... ); 除了前两个参数类型固定外,后面可以接任意多个参数. printf 和sprintf 都使用格式

C语言中字符串常用函数strcat与strcpy的用法介绍

以下是对C语言中字符串常用函数strcat与strcpy的使用方法进行了详细的分析介绍,需要的朋友可以参考下   strcpy原型声明:extern char *strcpy(char* dest, const char *src);头文件:#include <string.h>功能:把从src地址开始且含有NULL结束符的字符串复制到以dest开始的地址空间说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串. 返回指向dest的指针.函数实现: 复制代

Swift语言中如何使用JSON数据教程

原文:Swift语言中如何使用JSON数据教程 这是一篇翻译文章,原文出处:http://www.raywenderlich.com/82706/working-with-json-in-swift-tutorial   Swift语言中如何使用JSON数据教程   JSON(全称:JavaScript Object Notation),是网络服务中传输数据的常用方法,JSON因为容易使用,且可读性强, 所以非常受到欢迎.   下面是个JSON的一个片段: [ {"person": {

Swift语言指南(十) Swift语言的字符串与字符

字符串是一段字符的有序集合,如"hellow,world"或"信天翁".Swift 中的字符串由 String 类型表示,对应着 Character 类型值的集合. Swift 中的 String 类型为你的编程提供了一个高速的,兼容 Unicode规范 的文本处理方式.Swift 创建和处理字符串的语法轻量可读,与 C 语言的字符串语法颇为相似.字符串的拼接非常简单,只需将两个字符串用 + 运算符相加.字符串的值是否可变取决于其为常量还是变量,这一点与 Swift

深入理解Swift语言中的闭包机制_Swift

在 Swift 中的闭包类似于结构块,并可以在任何地方调用,它就像 C 和 Objective C 语言内置的函数. 函数内部定义的常数和变量引用可被捕获并存储在闭包.函数被视为封闭的特殊情况,它有 3 种形式. 在 Swift 语言闭合表达式,如下优化,重量轻语法风格,其中包括: 推导参数并从上下文菜单返回值的类型 从单封表达的隐性返回 简略参数名称 尾部闭包语法 语法 下面是一个通用的语法定义用于闭包,它接受参数并返回数据的类型: 复制代码 代码如下:   {(parameters) ->