我有一个简单的阵列,如:如何交换swift数组中的元素?
var cellOrder = [1,2,3,4]
我想交换像假设与第一元件的第二元件的元件。
而结果将是:
[2,1,3,4]
我知道我们可以用exchangeObjectAtIndex
与NSMutableArray
但我想使用快捷阵列。任何方式与swift [Int]
数组相同?
我有一个简单的阵列,如:如何交换swift数组中的元素?
var cellOrder = [1,2,3,4]
我想交换像假设与第一元件的第二元件的元件。
而结果将是:
[2,1,3,4]
我知道我们可以用exchangeObjectAtIndex
与NSMutableArray
但我想使用快捷阵列。任何方式与swift [Int]
数组相同?
使用swap
:
var cellOrder = [1,2,3,4]
swap(&cellOrder[0], &cellOrder[1])
或者,你可以将其指定为一个元组:
(cellOrder[0], cellOrder[1]) = (cellOrder[1], cellOrder[0])
非常优雅和简单 –
在swift 4现在'swapAt' – Rishab
'swapAt'是一个不同的函数需要索引而不是'inout'值。它也可以用来解决这个问题,但不能代替'swap'(它仍然存在于Swift 4中)。 –
一种选择是:
cellOrder[0...1] = [cellOrder[1], cellOrder[0]]
因为*你发布了一个关于它的问题:[致命错误:Swift 2.0不支持交换位置] 32689753 /致命错误交换-a-location-with-its-is-not-supported-with-swift-2-0) –