Swift 如何使用String.substringWithRange
你可以使用两种语法(…<或…)指定范围操作符。这两种语法用于不同的目的。作为第一种语法的一部分,范围的起始值和结束值都包括在内。相反,第二种语法包括一个起始值和一个可选的终止值。
例如,你想指定一个从数字1到4的范围,你可以像这样定义1…<5的范围运算符语法。以类似的方式,要指定从1到5的范围,你可以像范围运算符的1…5语法那样创建一个范围。这两种语法都可以与for-in循环一起使用,进行迭代。
Swift中有哪些类型的范围操作符
在Swift中,有两种类型的范围操作符 −
- 闭合范围操作符(…)–该操作符定义了一个包括第一个和最后一个值的范围。例如,1…5定义了一个从1到5的整数范围,包括在内。
-
半开范围操作符(…<)–该操作符定义了一个包括第一个值但不包括最后一个值的范围。例如,1…<5定义了一个从1到4的整数范围。
如果整数、浮点数和字符串符合可比较协议,就可以对它们使用这两个运算符。
例子
这两种类型的范围也可以通过各种方式使用,比如在for循环中,访问数组中的元素,检查一个值是否在特定范围内,等等。
范围在Swift中是如何工作的
在Swift中,范围是用范围操作符(…<或…)定义的,并指定一个值的范围。范围操作符 …< 定义的范围包括第一个值,但不包括最后一个值,而范围操作符 … 则包括第一个和最后一个值。
例如,1…<5定义了一个从1到4的整数范围,而1…5定义了一个从1到5的整数范围。
范围可以在Swift中以各种方式使用
在for循环中
范围运算符非常常用于for循环。范围运算符在for循环中提供了灵活的元素迭代。
例子
输出
访问一个数组中的元素
范围操作符可以用来访问一个数组或其他集合中的元素组。
例子
输出
使用范围来迭代一个数组
这是最常用的范围操作符,可以简单地迭代一个数组。
例子
输出
使用一个范围来检查一个值是否在一个特定的范围内
你可以检查一个值是否存在于一个范围内。范围操作符使这一检查变得简单。
例子
输出
使用一个范围来检查一个值是否在switch case的范围内
在Swift语言中,switch语句是非常强大的。你可以在Switch的情况下使用范围操作符。
例子
输出
在stride(from:to:by:)函数中使用一个范围
你可以在stride()函数中提供一个范围,以提供起始值和终止值,以及一个增量计数。
例子
输出
如何使用String.substringWithRange
在Swift 5中,我们不再有机会使用substring()方法,因为它们已经被废弃了。我们将讨论所有的替代方法并详细了解它们。
在Swift 4.2及以上版本中,substring(with:)方法已经更新为String[startIndex...<endIndex]
或String[...<endIndex]
,可以使用范围从一个字符串中提取子串。下面是一个使用这种新语法的例子 –
例子
输出
总结
在Swift中,范围是用来创建一个数值范围的,它可以有多种应用。闭合范围运算符和半开范围运算符是两种不同类型的范围运算符。范围可以用于开关语句、for循环、stride(from:to:by:)函数、访问数组中的元素、确定一个值是否在一个给定的范围内以及许多其他情况。