Имам списък, който е дефиниран по-долу:
def list1=["Test1","Test2","Test3"]
String str="Test2"
println("Found The String is:"+list1.contains(str));
//It is returning false even though there is a matching string.
Имам списък, който е дефиниран по-долу:
def list1=["Test1","Test2","Test3"]
String str="Test2"
println("Found The String is:"+list1.contains(str));
//It is returning false even though there is a matching string.
Това, което сте въвели там, работи, така че има нещо друго нередно. Предполагам, че сте направили нещо като:
String part = "Test"
String str="Test2"
def list1=["${part}1","${part}2","Test3"]
def found = list1.contains(str)
в този случай found
ще бъде невярно... защото:
"${'test'}"
не е равно на "test"
, за някои дефиниции на равно... въпреки че отпечатването и на двете ви кара да мислите така.
Ето защо: Groovy различни резултати при използване на equals() и == на GStringImpl