Массивы являются изменяемыми и, как таковые, равны, только если они являются одним и тем же массивом. (Не на основе их содержимого) Если вы хотите сравнить содержимое, вам может понадобиться использовать List<Integer>
Также нельзя сравнивать элемент с массивом, они никогда не будут равны.
Попробуйте следующее
public static void main(String... args) {
List<List<Integer>> allVariables = new ArrayList<List<Integer>>();
allVariables.add(Arrays.asList(1));
allVariables.add(Arrays.asList(1,2,3,4));
testContains(allVariables, 1);
testContains(allVariables, 1, 2);
testContains(allVariables, 1, 2, 3);
testContains(allVariables, 1, 2, 3, 4);
}
private static void testContains(List<List<Integer>> allVariables, Integer... ints) {
List<Integer> intList = Arrays.asList(ints);
System.out.println("allVariables contains " + intList +
" is " + allVariables.contains(intList));
}
печать
allVariables contains [1] is true
allVariables contains [1, 2] is false
allVariables contains [1, 2, 3] is false
allVariables contains [1, 2, 3, 4] is true