如何将 NSMutableArray 转换为 Swift 数组?

Posted

技术标签:

【中文标题】如何将 NSMutableArray 转换为 Swift 数组?【英文标题】:How to Convert NSMutable Array to Swift Array? 【发布时间】:2017-01-01 07:21:53 【问题描述】:

我将 ID 添加到 NSMutableArray 之后,我希望这个 MutableArrray 作为 Swift 数组。

这是我的代码:

var categories = NSMutableArray()

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) 


        if (!categoryTable.hidden)
        
            print("select multiple categories")

            categoryList = categoryData[indexPath.row]

            categories.addObject(["\(categoryList!.categoryID)"])

        


func tableView(tableView: UITableView, didDeselectRowAtIndexPath indexPath: NSIndexPath) 


        let listCategoryID = categoryData[indexPath.row]

        for category in categories as [AnyObject]
        

            if("\(listCategoryID.categoryID)" == category.objectAtIndex!(0) as! String)
            

                categories.removeObject(category)
            
        
        print("Catgeory ID \(categories)")

    

// Convert NSMutableArray To Swift Array
@IBAction func saveBtnPressed(sender: AnyObject) 

        let catgID = categories as AnyObject as! [String]

我得到的输出:类别 ID ( ( 27 ), ( 26 ) )

我想要的输出:["27","26"]

【问题讨论】:

试试for category in categories as [String] @iYoung 谢谢兄弟,我得到了同样的解决方案 Convert NSArray to Swift Array<T>的可能重复 【参考方案1】:
var catg_id:[Int] = []
        for category in categories as [AnyObject]
        
            catg_id.append(Int(category.objectAtIndex!(0) as! NSNumber))

        

【讨论】:

您想以字符串或整数形式输出?

以上是关于如何将 NSMutableArray 转换为 Swift 数组?的主要内容,如果未能解决你的问题,请参考以下文章

将 FMResultSet 转换为 NSMutableArray?

如何将字符串从 NSMutableArray 传递给 double

如何在 iphone sdk 中将 NSArray/NSMutableArray 转换为 NSFetchedResultsController?

无法将“NSMutableArray”类型的值转换为预期的参数类型“[SKTexture]”

从 NSData 的 NSMutableArray 转换为 NSString 的 NSMutableArray?

`[AnyObject]` 到 NSMutableArray