2015-10-19 70 views
-3

我有以下for循环,确定完成for循环中迅速

for (key, value) in changedDataDictionary { 
    // here i want to identify last key and value 
} 

我想,以确定最后目标的执行for循环

的/完成这可能是很无聊问题,但我对此没有任何想法。 在此先感谢。

+3

的字典没有排序,这是没有意义的......没有定义的顺序 –

+2

究竟你想做吗? – Sulthan

+1

请添加一些上下文。你想用迭代的最后一个对象实现什么? –

回答

3

这将在一般

var index: Int = 0 

for (key, value) in changedDataDictionary { 
    index += 1; 
    if (index == changedDataDictionary.count) { 
     // do something 
    } 
} 

注意的工作,字典不具有已定义的顺序,使最后一个元素将永远是一个不同的,通常有比使用跟踪指数更好的解决方案。

如果你只是想确定最后的关键和元素,你还可以:

var lastKey: KeyType? = nil 
var lastElement ValueType? = nil 

for (key, value) in changedDataDictionary { 
    lastKey = key; 
    lastValue = value; 
} 

// do something with last key and value 
+0

谢谢.........我将是简单的选项... – Venkat

+0

或者您可以在循环考虑词典没有秩序.... – TheCodingArt