gpt4 book ai didi

groovy - Groovy in operator 是如何工作的?

转载 作者:行者123 更新时间:2023-12-03 23:34:39 24 4
gpt4 key购买 nike

Groovy "in"运算符在不同情况下似乎意味着不同的东西。有时 x in y意味着 y.contains(x)有时它似乎打电话y.isCase(x) .

Groovy 如何知道要调用哪一个? Groovy 是否知道使用 .contains 方法的特定类或类集?或者行为是由对象之一上的方法的存在触发的?是否存在将 in 运算符完全更改为其他内容的情况?

最佳答案

我做了一些实验,它看起来像 in运算符基于 isCase方法仅如以下代码所示

class MyList extends ArrayList {
boolean isCase(Object val) {
return val == 66
}
}

def myList = new MyList()
myList << 55
55 in myList // Returns false but myList.contains(55) returns true
66 in myList // Returns true but myList.contains(66) returns false

对于 JDK 集合类,我想它看起来就像 in运算符基于 contains()因为 isCase()电话 contains()对于那些类(class)。

关于groovy - Groovy in operator 是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2068298/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com