系统之家提供 Windows 系统、Ghost 系统、驱动与常用软件的安全下载及安装教程。 后台管理
📢 欢迎访问系统之家!所有资源均经过安全检测。

数据类型

发布时间:2026-10-28 | 浏览:1
📥 下载地址(文章开头)
装机神器,可安装一切系统,纯净版,英文版,繁体版 ,精简版,原版等等等
字符串插值是一种从混合常量、变量、字面量和表达式的字符串字面量构造新 String 值的方法 每一个你插入到字符串字面量的元素都要被 一对圆括号包裹,然后使用反斜杠前缀 每一个 String 值都有相关的索引类型, String.Index,它相当于每个 Character 在字符串中的位置 startIndex:String 中第一个 Character 的位置。 endIndex:String中最后一个字符后一个的位置,endIndex 属性并不是字符串下标脚本的合法实际参数 如果 String 为空,则 startIndex 与 endIndex 相等 使用 index(before:) 和 index(after:) 方法来访问给定索引的前后 访问给定索引更远的索引,可以使用index(_:offsetBy:) 使用 indices 属性来访问字符串中每个字符的索引 实现 [@"hjdkhlfghdklfhdklfhnd" substringWithRange:NSMakeRange(5, 2)] 插入字符,使用 insert(_:at:) 方法 插入另一个字符串的内容到特定的索引,使用 insert(contentsOf:at:) 方法 • 移除字符,使用 remove(at:)方法 • 移除一小段特定范围的字符串,使用 removeSubrange(_:) 方法 使用下标或者类似 prefix(_:) 的方法得到的 子字符串 是 Substring 类型 Substring 拥有 String 的大部分方法 Substring 可以转成 String 类型 子字符串重用一部分原字符串的内存 修改字符串或者子字符串之前 都不需要花费拷贝内存的代价 String 和 Substring 都遵循 StringProtocol 协议,也就是说它基本上能很方便地兼容所有接受 StringProtocol 值的字符串操作函数 String 值在传递给方法或者函数的时候会被复制过去 赋值给常量或者变量的时候也是一样 Swift 编译器优化了字符串使用的资源,拷贝只会在需要的时候才进行 字符串和字符相等性(==和!=) 前缀相等性 hasPrefix(_:) 后缀相等性 hasSuffix(_:) Character 和 String ¶ Character 和 String 是两个不同的类型,分别用于表示单个字符和一系列字符。 定义 : Character 表示单个字符,可以是一个字母、数字、符号或其他字符。 使用场景 :用于表示和操作单个字符。 存储 : Character 实际上是一个扩展的 Unicode 标量,可以表示任何有效的 Unicode 字符,包括由多个 Unicode 标量组成的字符(如一些 emoji)。 示例 : let char : Character = "A" let emoji : Character = "😊" 定义 : String 表示一系列字符的集合,可以包含零个或多个字符。 使用场景 :用于表示和操作文本。 存储 : String 是一个复杂的数据结构,支持高效的字符串操作,包含 Unicode 编码和字符串操作优化。 Character 表示单个字符。 String 表示一系列字符。 String 表示一系列字符。 Character 只能用单个字符初始化。 String 可以用零个、一个或多个字符初始化。 String 可以用零个、一个或多个字符初始化。 Character 主要用于表示和操作单个字符。 String 提供了丰富的字符串操作方法,如拼接、分割、查找、替换等。 字符串拼接 : let firstChar : Character = "H" let secondChar : Character = "i" let combinedStr : String = String ( firstChar ) + String ( secondChar ) // "Hi" 字符串拼接 : let firstChar : Character = "H" let secondChar : Character = "i" let combinedStr : String = String ( firstChar ) + String ( secondChar ) // "Hi" 字符遍历 : let greeting : String = "Hello" for char in greeting { print ( char ) // 依次打印 "H", "e", "l", "l", "o" } 字符遍历 : let greeting : String = "Hello" for char in greeting { print ( char ) // 依次打印 "H", "e", "l", "l", "o" } 检查字符是否在字符串中 : let searchStr : String = "Hello, World!" let searchChar : Character = "W" let containsChar = searchStr . contains ( searchChar ) // true 检查字符是否在字符串中 : let searchStr : String = "Hello, World!" let searchChar : Character = "W" let containsChar = searchStr . contains ( searchChar ) // true 使用 Character 来表示和操作单个字符。 使用 String 来表示和操作一系列字符或文本。 元组可以存储固定数量的各种类型的元素,而不需要创建自定义类。 元组把多个值合并成单一的复合型的值 元组内的值可以是任何类型,并且不必是同一类型 元组中的每一个元素可以指定对应的元素名称 如果没有指定名称的元素也可以使用下标的方式来引用 用var定义的元组是可变元组,let定义的是不可变元组 无论是可变还是不可变元组,元组在创建后就不能增加和删除元素 可以对可变元组的元素进行修改,但是不能改变其类型 可以将一个元组的内容分解成单独的常量或变量 如果只需要使用其中的一部分数据,不需要的数据可以用下划线 _ 代替 返回值的Tuple可以在函数的返回类型部分被命名 创建空数组的时候必须携带类型信息 如果内容已经提供了类型信息,比如说作为函数的实际参数或者已经分类了的变量或常量,你可以通过空数组字面量来创建一个空数组 无法使用 break 或 continue 跳出或者跳过循环 ,使用 return 只能退出当前一次循环的执行体。 For-In 同时得到索引和值 enumerated() ¶ 使用 Iterator 遍历数组 ¶ startIndex 返回第一个元素的位置,对于数组来说,永远都是 0。 endIndex 返回最后一个元素索引 +1 的位置,对于数组来说,等同于count 。 如果数组为空,startIndex 等于 endIndex 。 indices 获取数组的索引区间 ¶ contains判断是否包含指定元素 ¶ contains(_:) 判断数组是否包含给定元素 contains(where:) 判断数组是否包含符合给定条件的元素 allSatisfy(_:) ¶ 判断数组中的所有元素是否符合给定的条件 first 返回数组第一个元素(optional),如果数组为空,返回 nil 。 last 返回数组最后一个元素(optional),如果数组为空,返回 nil。
📥 下载地址(文章中间)
装机神器,可安装一切系统,纯净版,英文版,繁体版 ,精简版,原版等等等
first(where:) 返回数组第一个符合给定条件的元素(optional)。 last(where:) 返回数组最后一个符合给定条件的元素(optional)。 firstIndex(of:) 返回给定的元素在数组中出现的第一个位置(optional) lastIndex(of:) 返回给定的元素在数组中出现的最后一个位置(optional) firstIndex(where:) 返回符合条件的第一个元素的位置(optional) lastIndex(where:) 返回符合条件的最后一个元素的位置(optional) min() 返回数组中最小的元素 max() 返回数组中最大的元素 min(by:) 利用给定的方式比较元素并返回数组中的最小元素 max(by:) 利用给定的方式比较元素并返回数组中的最大元素 append(_:) 在末尾添加一个元素 append(contentsOf: ) 在末尾添加多个元素 insert(_:at:) 在指定的位置插入一个元素 var array = [ 1 , 2 , 4 ] array . insert ( 3 , at : 2 ) // 现在数组是 [1, 2, 3, 4] - insert(contentsOf: at:) 在指定位置插入多个元素 ArraySlice 是数组或者其他 ArraySlice 的一段连续切片, 和原数组共享内存 。 当要 改变 ArraySlice 的时候,ArraySlice 会 copy 出来,形成单独内存 。 ArraySlice 拥有和 Array 基本完全类似的方法 通过 drop 得到 ArraySlice ¶ dropFirst(:) “移除”原数组前面指定个数的元素得到一个 ArraySlice dropLast(:) “移除”原数组后面指定个数的元素得到一个 ArraySlice drop(:) “移除”原数组符合指定条件的元素得到一个 ArraySlice 通过 prefifix 得到 ArraySlice ¶ prefifix() 获取数组前面指定个数的元素组成的 ArraySlice prefifix() 获取数组前面指定个数的元素组成的 ArraySlice prefifix(upTo: ) 获取数组到指定位置(不包含指定位置)前面的元素组成的 ArraySlice prefifix(upTo: ) 获取数组到指定位置(不包含指定位置)前面的元素组成的 ArraySlice prefifix(through: ) 获取数组到指定位置(包含指定位置)前面的元素组成的 ArraySlice prefifix(through: ) 获取数组到指定位置(包含指定位置)前面的元素组成的 ArraySlice prefifix(while: ) 获取数组前面符合条件的元素(到第一个不符合条件的元素截止)组成的 ArraySlice 通过 suffix 得到 ArraySlice ¶ suffix() 获取数组后面指定个数的元素组成的 ArraySlice suffix(from: ) 获取数组从指定位置到结尾(包含指定位置)的元素组成的 ArraySlice 通过 Range 得到 ArraySlice ¶ 通过对数组下标指定 Range 获取 ArraySlice,可以使用闭区间、半开半闭区间、单侧区间、甚至可以只使用 … 来获取整个数组组成的 ArraySlice 。 ArraySlice 转为 Array ¶ 使用 Array(slice) 。 ArraySlice 和原 Array 相互独立 ¶ ArraySlice 和原 Array 是相互独立的,它们添加删除元素不会影响对方。 shuffle() 在原数组上将数组元素打乱,只能作用在数组变量上。 shuffled() 返回原数组的随机化数组,可以作用在数组变量和常量上。 reverse() 在原数组上将数组逆序,只能作用在数组 变量 上。 reversed() 返回原数组的逆序“集合表示”,可以作用在数组变量和常量上,该方法不会分配新内存空间 partition(by belongsInSecondPartition: (Element) throws -> Bool) 将数组以某个条件分组。 数组前半部分都是不符合条件的元素,数组后半部分都是符合条件的元素。 sort() 在原数组上将元素排序,只能作用于数组变量。 sorted() 返回原数组的排序结果数组,可以作用在数组变量和常量上。 joined() 拼接字符串数组里的所有元素为一个字符串 joined(separator:) 以给定的分隔符拼接字符串数组里的所有元素为一个字符串 元素为 Sequence 数组的拼接 ¶ joined() 拼接数组里的所有元素为一个更大的 Sequence joined(separator:) 以给定的分隔符拼接数组里的所有元素为一个更大的 Sequence Sequence -> Collection -> RangeReplaceableCollection -> Array 序列 (sequence) 代表的是一系列具有相同类型的值,可以对这些值进行迭代。 IteratorProtocol ¶ Sequence 通过创建一个迭代器来提供对元素的访问。迭代器每次产生一个序列的值,并且当遍历序列时对遍历状态进行管理。 当序列被耗尽时,next() 应该返回 nil 。 Collection 是满足下面条件的 Sequence 稳定的 Sequence,能够被多次遍历且保持一致 除了线性遍历以外,集合中的元素也可以通过下标索引的方式被获取到 和 Sequence 不同,Collection 类型不能是无限的 确定性 :给定一个集合,任给一个元素,该元素或者属于或者不属于该集合,二者必居其一。 互斥性 : 集合中任何两个元素都认为是不相同的,即每个元素只能出现一次。 无序性 : 集合中每个元素的地位都是相同的,元素之间是无序的。 集合类型写做 Set<Element> ,Element是Set要储存的类型。 使用初始化器语法来创建一个确定类型的空 Set 为了能让类型储存在 Set 当中,它必须是可哈希的——就是说类型必须提供 计算它自身哈希值 的方法。 所有 Swift 的基础类型(比如 String, Int, Double, Bool)默认都是可哈希的,并且可用于 Set 或者Dictionary 的键。 字典储存无序的、互相关联的 同一类型的键 和 同一类型的值 的集合 字典储存无序的、互相关联的 同一类型的键 和 同一类型的值 的集合 字典类型的全写方式 Dictionary ,简写方式 [Key: Value] 字典类型的全写方式 Dictionary ,简写方式 [Key: Value] 字典的 key 必须是可哈希的 字典的 key 必须是可哈希的 count 和 isEmpty ¶ count 属性:Dictionary 拥有多少元素 count 属性:Dictionary 拥有多少元素 isEmpty 属性:字典是否为空 isEmpty 属性:字典是否为空
📥 下载地址(文章结尾)
装机神器,可安装一切系统,纯净版,英文版,繁体版 ,精简版,原版等等等