Tôi có 2 mảng chuỗi. Ví dụ: giả sử điều này:Xem nếu 2 mảng chứa cùng một phần tử (swift 2.0)
let array1 = ["string1", "string2", "string3", "string4", "string5"]
let array2 = ["string8", "string4", "string3", "string367", "string5"]
Tôi muốn so sánh và xem liệu 2 mảng có chứa bất kỳ phần tử nào giống nhau không và sau đó đặt kết quả vào một mảng các bool. Giống như nói "phần tử đầu tiên trong array1 là" string1 ", bây giờ chúng ta hãy xem xét và xem nếu bất kỳ phần tử nào trong mảng 2 cũng giống như" string1 ", nếu chúng là, phần tử đầu tiên trong boolArray sẽ là true, nếu không, sẽ là sai. " Kết quả của việc này để so sánh mảng1 với mảng2 ở đây sẽ mang lại một boolArray của
var boolArray = [false, false, true, true, true]
Làm cách nào để làm điều này? Tôi cố gắng này:
for y in array1 {
for z in array2 {
if y == z {
self.boolArray.append(true)
}
else {
self.boolArray.append(false)
}
}
}
nhưng nó đã không làm việc, như boolArray chứa 25 nguyên tố, và nó chỉ nên chứa 5. Có thể có một số chức năng nhanh chóng mà tôi không nhận thức được rằng hiện rất nhiều này cho chúng tôi?
vâng, đây là những gì tôi đang tìm kiếm. cảm ơn rất nhiều! nó tạo ra một mảng các bool cho biết mảng đầu tiên có một phần tử phù hợp trong mảng thứ hai hay không. – joey
NP. Nó không phải là giải pháp duyên dáng hay hiệu quả nhất nhưng sử dụng giải pháp ban đầu của bạn nó sẽ hoàn thành công việc. – Dan
Một điều có thể cải thiện hiệu quả của câu trả lời này là thêm
break
sau khi bạn đặt boolValue thành true – Tyrelidrel