Groovy "in" operatörü farklı durumlarda farklı şeyler anlamına gelir. Bazen x in y
, y.contains(x)
anlamına gelir ve bazen y.isCase(x)
'u arar.Operatördeki Groovy nasıl çalışır?
Groovy hangisini arayacağını biliyor? Groovy'nin .contains yöntemini kullanan hakkında bildiği belirli bir sınıf veya sınıf grubu var mı? Ya da nesnelerden birindeki bir yöntemin varlığı tarafından tetiklenen davranış mıdır? Operatörün tamamen başka bir şeye dönüştüğü durumlar var mı?
Tamam ile kullanılabilir, bu mantıklı. "In" ve isCase arasındaki ilişki hakkında kafam karışmıştı. Şimdi bir kapsayıcıyı bir kasa etiketi olarak kullanırken anlamlıdır. Reuse isCase in operatörü biraz şaşırtıcıdır, çünkü String == true'da 'asdf' gibi beklenmedik ifadelere izin verir. – ataylor
Bu doğru, ancak groovy bölümünde imo fakir. Dava beyanı davranışı ve bir elementi içeren koleksiyonlar aynı mantığı koleksiyonlarla kullanırken, diğer durumlarda çok farklıdırlar. Örneğin, aşağıdaki iddialar geçmez: 'çörekler' içinde 'b' ibaresi. Bu en az söylemek mantıklıdır. –
Lütfen herkesin ne demek olduğunu kısaca anlatır mısınız? –