0
我有函數返回的可選元組添加可選的元組數組
(Range<String.Index>?, Range<String.Index>?).
然後,我需要這個元組添加到元組的陣列,我宣佈爲
var arrayOftuples = [(Range<String.Index>, Range<String.Index>)]()
我加入這樣的元組到這個數組
arrayOftuples += [mytuple]
它給了我一個注意,operator + =不能應用於操作數
[(Range<String.Index>, Range<String.Index>)]
和
[(Range<String.Index>?, Range<String.Index>?)]
當我做了陣列的可選
var arrayOftuples = [(Range<String.Index>?, Range<String.Index>?)]()
沒有更多的抱怨聲明。但是,到了最後,我需要使用的startIndex和endIndex從元組數組,當我設法得到它喜歡這個
let myrange = arrayOftuples.first!.0.startIndex..< arrayOftuples.first!.0.endIndex
我有抱怨類型的那個值
Range<String.Index>?
has no startIndex。
至於我能理解,如果我想從元組獲得了startIndex和endIndex,我需要使用無自選的陣列,
var arrayOftuples = [(Range<String.Index>, Range<String.Index>)]()
但我需要以某種方式從可選的元組只添加這不是(零,零)。當像這樣添加元組時
arrayOftuples += [mytuple!]
它不接受這個。如果我使用這樣的條件
if mytuple != (nil, nil)
{
arrayOftuples += [mytuple]
}
它也不起作用。抱怨是運算符!=不能被應用。如何解決問題?
謝謝!有用。 – VYT