gpt4 book ai didi

swift - 如何访问某个索引处的 Range

转载 作者:行者123 更新时间:2023-11-28 07:11:29 27 4
gpt4 key购买 nike

假设我有一个 Range<Int>称为 myRange :

let myRange = 1...10

我将如何访问此 Range<Int> 中的第 0第 5 值? ?

我知道你可以创建一个 Array<Int>来自 Range<Int>并使用索引访问它:

let rangeArray = Array(myRange)
print("myRange at index 1 has a value of \(rangeArray[1])")
//prints "myRange at index 1 has a value of 2"

但我个人觉得这不是很优雅。
有解决办法吗?

最佳答案

如果您只想使用第一个或最后一个索引,您可以使用 startIndexendIndex 属性。

不过,您可以使用以下函数获取特定索引处的值。

func getValueOfRange(range : Range<Int>,atIndex index : Int) -> Int?
{
if (index > (range.endIndex - range.startIndex)) || index < 0 {
return nil
}
return range.startIndex + index - 1
}

let myRange2 = 6...10
getValueOfRange(myRange2, atIndex: 5) // Some 5

getValueOfRange(myRange2, atIndex: 11) // nil

关于swift - 如何访问某个索引处的 Range<Int> ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28275054/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com