Swift 2.0 - ERROR: Immutable value of type '[String]' only has mutating members named 'append'

Swift 2.0 - ERROR: Immutable value of type '[String]' only has mutating members named 'append'

我正在尝试编写一个 methodHTML tag 提取到数组中,因为我想以树结构解析网页。

  func extractStringFromHTMLInsideTags(htmlString:String, htmlTagPairArray:[String], saveToArray:[String]) -> String
{
    var htmlNSString     = htmlString as NSString
    var lenght           = htmlNSString.length

    var openingTag       = htmlTagPairArray[0] as NSString
    var openingTagLength = openingTag.length

    var closingTag       = htmlTagPairArray[1] as NSString
    var closingTagLength = closingTag.length

    if (htmlString.rangeOfString(htmlTagPairArray[0]) != nil)
    {
        let rangeStart:NSRange! = htmlNSString.rangeOfString(htmlTagPairArray[0], options: NSStringCompareOptions.CaseInsensitiveSearch)
        var rangeEnd:NSRange!   = htmlNSString.rangeOfString(htmlTagPairArray[1], options: NSStringCompareOptions.CaseInsensitiveSearch)

        let startTagIndex: Int  = rangeStart.location + openingTagLength
        let boldTextLenght: Int = rangeEnd.location - rangeStart.location - openingTagLength
        let endTagIndex: Int    = startTagIndex + boldTextLenght


        let startIndex          = advance(htmlString.startIndex,startTagIndex)//advance as much as you like
        let endIndex            = advance(htmlString.startIndex,endTagIndex)
        let range               = startIndex..<endIndex
        var resultString        = htmlString.substringWithRange( range )

        saveToArray.append(resultString)

        resultString = htmlString.stringByReplacingOccurrencesOfString(htmlTagPairArray[0] + resultString + htmlTagPairArray[1], withString: resultString, options: nil, range: nil)

        if (resultString.rangeOfString(htmlTagPairArray[0]) != nil)
        {
            resultString = extractStringFromHTMLInsideTags(resultString,htmlTagPairArray:htmlTagPairArray, saveToArray:saveToArray)
        }

        return resultString

    }

    return htmlString
}

在线:

saveToArray.append(resultString)

我收到错误:

Immutable value of type '[String]' only has mutating members named 'append'

错误指出 saveToArray 是不可变的。我以为数组是通过引用复制的...?

为什么会这样?

(我正在使用 Swift 2.0 和 Xcode 7.1)。

默认情况下,方法中传递的参数是不可变的 (let)。
添加关键字 var 使它们可变

func extractStringFromHTMLInsideTags(htmlString:String, htmlTagPairArray:[String], var saveToArray:[String]) -> String
{ ...