当前位置: 首页 > 知识库问答 >
问题:

快速求和range.locationrange.length[副本]

杜焕
2023-03-14

我有以下Obj-c声明:

string = [string substringFromIndex:(range.location + range.length)];

什么是Swift等价物?

共有2个答案

谷梁永年
2023-03-14

如果不想使用子字符串:

let string = "abcdefghijklm"
let startPoint = 2
let length = 5

let startIndex = string.index(string.startIndex, offsetBy: startPoint)
let endIndex = string.index(startIndex, offsetBy: length)

let result = string[startIndex ..< endIndex]
print(result)         // cdefg
白吕恭
2023-03-14

您应该使用子字符串(从:):

var string = "Hello World"

string = string.substring(from: string.index(string.startIndex, offsetBy: 6))

print(string) // "World"

此外,您可能希望使用substring(to:):

let hello = string.substring(to: string.index(string.startIndex, offsetBy: 5))

print(hello) // "Hello"

有关字符串的详细信息。索引,检查此问题/答案。

 类似资料:
  • 我正在寻找一个快速的算法: 我有一个大小为n的int数组,目标是在数组中找到所有模式, 例如,我知道有一个大小为3的int数组是,那么只有一种可能性:12=3(考虑12=21) 我正在考虑实现对和Hashmap来使算法快速。(我现在得到的最快的仍然是 请分享你对这个问题的看法,谢谢

  • 我有一个浮点数的 MxN 数组 A,我想进行以下操作:对于 A 的每一列,计算小于某个阈值(例如 0.5)的元素数量。 Julia执行此操作的最快方法是使用零初始化结果向量,然后按列遍历数组A并在需要时递增结果向量。例如,使用for循环执行此操作很容易 这将按照与内存中的布局相同的顺序遍历 A,并且不会分配不必要的额外空间。但是,我不确定如何使用例如广播运营商来实现这一点。 但是这只是为了执行操作

  • 我正在尝试将的接口扩展为: 但我得到了以下错误: 没有与此调用匹配的重载。重载1/3'(路径:PathParams,…处理程序:RequestHandler

  • 问题内容: 我需要一种快速的方法来复制表中的DATETIME列并为其赋予新的名称。 我的表中有名为myResults的列myDate,我需要查询以在表中创建一个名为newDate的新列,该列具有与myDate列完全相同的数据。 有没有比做一个明显的两步方法来做一个新列,然后复制所有数据(这是一个大表,我正在寻找最快的方法)更快的方法? 明显的解决方案: 问题答案: 不幸的是,显而易见的解决方案是唯

  • 问题内容: 我有一个叫Meal的课程 而且我有很多餐: 我想复制该数组,然后在其中一个实例中对Meal实例进行一些更改,而在第二个实例中不更改Meal实例,我将如何对其进行深拷贝? 问题答案: 由于是一个快速数组,所以该语句 将有效地复制原始数组。 但是,由于Meal是一 类 ,因此新数组将包含对原始膳食中相同膳食的引用。 如果您也想复制进餐内容,那么在一个数组中更改进餐不会在另一个数组中更改进餐

  • 问题内容: 我有一个包含数千个数字的文件,每个数字都在自己的行上: 我正在寻找一个脚本,该脚本将打印文件中所有数字的总和。我有一个解决方案,但是效率不是很高。(运行需要几分钟。)我正在寻找一种更有效的解决方案。有什么建议么? 问题答案: 对于Perl一线软件,它基本上与AymanHourieh的答案中的解决方案相同 如果您对Perl单一代码的用途感到好奇,则可以贬低它们: 结果是该程序的更详细的版