2017-08-04 52 views
0

数组1 = [华盛顿,富兰克林,佛罗里达州,阿拉斯加,加利福尼亚州,佐治亚]夫特3个删除对象

ARRAY2 = [加利福尼亚州,华盛顿,佐治亚]

我想

数组1 = [华盛顿,加利福尼亚州,佐治亚]

回答

3
var array1 = ["Washington", "Franklin", "Florida", "Alaska", "California", "Georgia"] 
var array2 = ["California", "Washington", "Georgia"] 

let filterArray = array1.filter { 
    array2.contains($0) 
} 

filterArray是你想要

2

试试这个

let filteredArray = array1.filter({Array2.contains($0)}) 
1

如果要检索比仅使用共同的要素:

在斯威夫特3

let Array1 = ["Washington", "Franklin", "Florida", "Alaska", "California", "Georgia"] 

let Array2 = ["California", "Washington", "Georgia"] 

let common = GetCommonElements(lhs: Array1, rhs: Array2) 

print(common) 

func GetCommonElements <T, U> (lhs: T, rhs: U) -> [T.Iterator.Element] where T: Sequence, U: Sequence, T.Iterator.Element: Equatable, T.Iterator.Element == U.Iterator.Element { 
     var returnArray:[T.Iterator.Element] = [] 
     for lhsItem in lhs { 
      for rhsItem in rhs { 
       if lhsItem == rhsItem { 
        returnArray.append(lhsItem) 
       } 
      } 
     } 
     return returnArray 
} 
2

您可以使用过滤器实现所需的输出

使用过滤器:

let array1 = ["Washington", "Franklin", "Florida", "Alaska", "California", "Georgia"] 
let array2 = ["California", "Washington", "Georgia"] 

let aryCommonElements = array1.filter { array2.contains($0)} 

输出:

["Washington", "California", "Georgia"] 

希望这将帮助你:)

+0

他不能使用套,因为他要维护秩序 – 3stud1ant3

+0

我什么已经展示了两种方法。一个与过滤器设置和其他。过滤器将工作。 我编辑了我的答案,请检查它 –