在OC中下面代碼會輸出什么:
NSArray *temp ?= @[@1,@2,@3];
? ? for(int i = 0; i < temp.count-4; i++) {
? ? ? ? NSLog(@"%d",i);
? ? }
在swift中下面代碼會輸出什么:
let temp = [1,2,3]
? ? ? ? for i in 0 ..< temp.count-4 {
? ? ? ? ? ? print(i)
? ? ? ? }
結(jié)果顯然易見:OC會一直輸出i直到一個最大值舟扎,swift不會輸出悴务。
原因是在OC中數(shù)組的count是NSUInteger類型,當(dāng)NSUInteger為負(fù)數(shù)的時(shí)候羡疗,會變成最大值别洪。swift中count是int型,所以沒有問題特碳。
下回要被抬杠晕换,就用這個杠回去≌⒆迹滑稽。