Swift 如何返回可选的元组

Swift 如何返回可选的元组,swift,tuples,Swift,Tuples,我有一个函数,它为string1和string2中的子字符串查找两个范围,并返回元组 (Range<String.Index>!, Range<String.Index>!) (范围,范围!) 我需要元组,以便以后将它们存储在数组中。当没有找到范围时,问题就出现了。如何处理这个问题,应该返回什么函数–空元组或带nil(nil,nil)的元组 您应该返回选项,而不是强制展开元组中的每个范围对象: (Range<String.Index>?, Range&

我有一个函数,它为string1和string2中的子字符串查找两个范围,并返回元组

(Range<String.Index>!, Range<String.Index>!)  
(范围,范围!)

我需要元组,以便以后将它们存储在数组中。当没有找到范围时,问题就出现了。如何处理这个问题,应该返回什么函数–空元组或带nil(nil,nil)的元组

您应该返回选项,而不是强制展开元组中的每个
范围
对象:

(Range<String.Index>?, Range<String.Index>?)
(范围?,范围?)

最好将元组本身设置为可选,而不是在函数失败时返回一个充满
nil
s的元组:

func myFunction() -> (value1: Type, value2: Type)?
{
   if (it_hasnt_worked) {
      return nil
   }
}

注意,在函数声明中,问号位于元组之后。

是否使用选项<代码>(范围?,范围?)@JAL谢谢,它能用!