当前位置: 首页 > 面试题库 >

比较2个数组并列出差异-Swift

吴同
2023-03-14
问题内容

我想知道如何比较两个布尔数组并列出不匹配的布尔值。

我写了一个2数组的简单示例。

let array1 = [true, false, true, false]
let array2 = [true, true, true, true]

我如何比较array1和array2并显示不匹配的内容。我正在尝试执行此操作以检查问答游戏的用户结果。

谢谢!


问题答案:

这里的 一个 实现,但无论是一个你追求的是完全不可能说,因为你没有指定你认为答案 应该 是:

let answer = zip(array1, array2).map {$0.0 == $0.1}

true如果答案与正确答案相匹配,则将为您提供布尔值列表false

但是,假设您想要的是正确答案的 索引 列表。然后您可以说:

let answer = zip(array1, array2).enumerated().filter() {
    $1.0 == $1.1
}.map{$0.0}

如果您想要 正确答案的索引列表,只需更改==!=



 类似资料:
  • 问题内容: 比较两个数组并返回差值的最快/最佳方法是什么?非常类似于PHP。有一个简单的功能,还是我必须创建一个via ?还是循环? 问题答案: 如果您希望在JQuery中做到这一点,希望对您有所帮助。 最后的警报提示不常见元素数组Array,即2个数组之间的差。 请让我知道我是否错过了任何事情,干杯! 码

  • 过滤出数组中比较函数不返回 true 的所有值。 类似于difference ,除了接受一个 comparator (比较函数)。 使用 Array.filter() 和 Array.findIndex() 来查找合适的值。 const differenceWith = (arr, val, comp) => arr.filter(a => val.findIndex(b => comp(a, b

  • 有2个LinkedHashMaps。我必须检查两个LinkedHashMaps是否有相同的密钥。 例如 Map1包含{A-A、B-B、C-C} 地图 2 包含 {A-a, B-r, C-c, Z-z} 所以这里的第三个LinkedHashMap应该包含{Z-z},因为它包含额外的键和 {B-r}应该在修改时打印出来

  • 我想我可以做一个逐行和逐列的比较,但有没有更简单的方法?

  • 问题内容: 我试图突出显示两个数据框之间到底发生了什么变化。 假设我有两个Python Pandas数据框: 我的目标是输出一个HTML表: 标识已更改的行(可以是int,float,boolean,string) 输出具有相同,OLD和NEW值的行(理想情况下,将其输出到HTML表中),以便使用者可以清楚地看到两个数据框之间的变化: id Name score isEnrolled Commen

  • 我正在构建一个swing应用程序,它将在左边有一个项目列表,在右边有一个表。右侧显示的表数取决于左侧选择的项。我希望能够“突出显示”(setBackground)显示所有表中相同的所有行。 我读过关于重写prepareRenderer或GetTableCellRendererComponent的文章。然后,条件呈现逻辑位于重写的方法中。 DefaultTableCellRenderer GetTa