我想知道如何比較2個布爾數組並列出不匹配的布爾值。比較2個數組並列出差異 - Swift
我寫了一個2數組的簡單例子。
let array1 = [true, false, true, false]
let array2 = [true, true, true, true]
我如何比較陣列1 &數組2和顯示非匹配。我正在嘗試執行此操作來檢查用戶測驗遊戲的結果。
謝謝!
我想知道如何比較2個布爾數組並列出不匹配的布爾值。比較2個數組並列出差異 - Swift
我寫了一個2數組的簡單例子。
let array1 = [true, false, true, false]
let array2 = [true, true, true, true]
我如何比較陣列1 &數組2和顯示非匹配。我正在嘗試執行此操作來檢查用戶測驗遊戲的結果。
謝謝!
這裏的一個實現,但無論是一個你追求的是完全不可能說,因爲你沒有指定你認爲答案應該是:
let answer = zip(array1, array2).map {$0.0 == $0.1}
這就給了你Bool值列表,true
如果答案與正確答案匹配,則返回false
。
但讓我們假設你想要的是索引的列表,這些答案是正確的。然後,你可以說:
let answer = zip(array1, array2).enumerated().filter() {
$1.0 == $1.1
}.map{$0.0}
如果你想這些答案的索引列表是不正確的,只是改變==
到!=
。
你真的不知道嗎? – dasdom
問題是,你不清楚你認爲答案是什麼。你希望/期待這個特定輸入的結果是什麼?你想要一個索引列表嗎?數組?什麼?如果一個人擁有比另一個更多的布爾值,那麼答案是什麼?如果一個人是空的? – matt
該數組應該是什麼樣子?你必須_specify_!你腦子裏的「正確答案」是什麼? – matt