【问题标题】:Check if an object is the last in the array [duplicate]检查对象是否是数组中的最后一个
【发布时间】:2016-07-13 12:24:57
【问题描述】:

我有一个名为myArray[myObject] 数组和一个myObject 对象。

我想检查myObject 是否是myArray 中的最后一个对象。

最好的方法是什么?

我试过了:

if myObject == myArray.last!

但它给了我这个错误:

Binary operator '==' cannot be applied to two 'myObject' operands

有什么想法吗? 谢谢!

【问题讨论】:

  • 你试过“isEqualTo:”吗?您是否调试过这两个对象属于同一类型/类?
  • 你的对象是什么类型的?是否符合Equatable
  • 您的对象必须符合 Equatable。我这里有一个例子:stackoverflow.com/a/32953118/2227743
  • @fiks Equatable 是什么?
  • @EricD Equatable 是什么?

标签: ios iphone swift macos cocoa-touch


【解决方案1】:

试试这个可能对你有用。

let ary = ["1","2","3"]

if ary[0].isEqual(ary.last!){
    print("Is last object")
}else{
    print("Is Not last object")
}

你的输出应该是:Is Not last object

let ary = ["1"]

if ary[0].isEqual(ary.last!){
    print("Is last object")
}else{
    print("Is Not last object")
}

你的输出应该是:Is last object

【讨论】:

  • OP 有一个 objects 数组(例如类或结构实例),而不是字符串数组。
  • 在这里您可以尝试比较任何类型的对象。
  • 没有。如果它们不符合 Equatable,它不适用于类/结构实例。您应该阅读我提供给 OP 的链接...
猜你喜欢
  • 1970-01-01
  • 2021-08-17
  • 1970-01-01
  • 1970-01-01
  • 2016-02-20
  • 2016-04-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多