in the loop , I make some actions then get and add string to the list1
after loop: list1 contains 2 strings : OK
now, in another loop I get value on each iteration which return me a string and I would like to check that strings in list1 aren’t available in the second:
for(inti=0;i<nb;i++){
value= table.getValue(i);
list1.add(value);
}
for(int j=0;j<nb;j++){
String toto = table.getValue(i);
//do other actions
//here verify that list1 doesn't contain toto
//I tried :
assetFalse(table.getValue(i).contains(list1)); //not OK !
}
First the method is called assertFalse.
Second you’re checking if
totocontains the list (table.getValue(i)istoto).Note that your code could also be read as
assertFalse(toto.contains(list1));(with the spelling fixed and using the assignment above).Instead I guess you’d like to do this instead:
Also note that in your two loops you iterate over the same collection (
table) and the same indices ( 0 tonb-1). Thuslistwill always contain the values you check for (unless you’re removing them somewhere) and thus your assertation will always fail.Finally, please post compilable code:
inti=0;won’t compile as well asassetFalse(...)norString toto = table.getValue(i);, sinceiisn’t known in that loop (it is out of scope).If you want us to help you, please put more effort into your questions.
Edit
If you want to compare two collections, you could also use a utility library like Apache Commons Collections, which has methods like
CollectionUtils.containsAny(collection1, collection2)(this would return true if at least one element is present in both collections) etc.Google Guava should have similar utilities.