我正在尝试创建一个函数,该函数可以删除以下项:
var array = [23,36,12,45,52,63]
removeItem(12,array)
result : array = [23,36,45,52,63]我正在尝试为PFObject实现这一点,但是我得到了错误:
public func removeObjectFromArray(user:PFObject,array:[PFObject]) -> [PFObject]{
for var i = 0;i < array.count ; i++ {
if array[i].objectId == user.objectId{
array.removeAtIndex(i)
return array
}
}
}我得到的错误是:
Immutable type of [PFObject] only ha mutating members named 'removeAtIndex'有什么解决方案吗?
谢谢
发布于 2015-08-26 23:35:55
试着这样做:
public func removeObjectFromArray(user: PFObject, array: [PFObject]) -> [PFObject] {
var a = array
for i in 0..<a.count {
if a[i].objectId == user.objectId {
a.removeAtIndex(i)
return a
}
}
return a
}问题是您试图修改函数参数。
您还可以通过添加var关键字来使函数参数可变,相关问题如下:Swift make method parameter mutable?
发布于 2015-08-26 23:42:17
我不是一个敏捷的开发人员,但我从不喜欢删除循环中的对象。下面是我怎么做的(伪代码):
var a = empty array
for i in (0 -> length of array) {
if array[i].objectId != user.objectId {
a.addObject(array[i])
}
}
return ahttps://stackoverflow.com/questions/32230839
复制相似问题