我正在使用列表数据类型(http://www.aerospike.com/docs/guide/cdt-list.html
)使用golang客户端在Aerospike中。我可以使用ListInsertOp(https://godoc.org/github.com/aerospike/aerospike-client-go#ListInsertOp)在给定条目的列表中插入值。
但是,我想使用ListSetOp(https://godoc.org/github.com/aerospike/aerospike-client-go#ListSetOp)或ListRemoveOp(https://godoc.org/github.com/aerospike/aerospike-client-go#ListRemoveOp)更新/删除给定的列表值
为此,我需要一个索引。我如何获得该指数?有没有一种方法可以遍历所有列表值并获取索引,然后执行更新或删除操作?
最佳答案
假设您有一个名为List
的列表。
假设您想将value
元素替换为newItem
您可以这样做:
...
for index, item := range List {
if item == value {
List[index] = newItem
}
}
...
在以上代码段中,
index
是元素item
所在的索引。通过这种方式,您还可以将列表中特定索引上存在的元素替换为value
。操场上的样本示例:https://play.golang.org/p/qOmsY9fbL2
关于go - 如何使用golang遍历Aerospike中的列表?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46679631/