Fundo: não há lista de produtos página e eu tenho que pegar todos o nome do produto (incluindo fora do produto de ações) e, então, para verificar se todos fora do produto de ações são no final.
Problema: i navegou toda a página e armazenados os nomes de produtos em um ArrayList.
permite dizer list1
e conteúdo são -
[instant bcaa, vegan bcaa, complete bcaa energy™, branched chain amino acid (bcaa) tablets 1000mg, endure™, branched chain amino acids (bcaa), instant leucine, leucine tablets 1000mg, complete intra-workout™, leucine, bcaa jelly mix, complete hydration drink™, informed bcaa™, instant bcaa cocktail bundle]
Agora eu tenho uma outra lista que têm apenas Fora de estoque do produto
list2
e conteúdo são -
[informed bcaa™, instant bcaa cocktail bundle]
Eu tenho que ter certeza se list1 tem todos os itens Lista2 no fim em mesma seqüência
Este problema é essencialmente tentando validar que uma determinada lista A
, termina com uma segunda lista B
.
Você poderia implementar isso através da determinação do comprimento da lista B
, o retrocesso que muitos espaços a partir do final de lista A
, e depois fazer uma comparação de pares de ambas as listas:
public static boolean listEndsWith(List<?> A, List<?> B) {
if (B.size() > A.size()) {
return false;
}
for (int i = A.size() - B.size(), j = 0; i < A.size(); i++, j++) {
if (!A.get(i).equals(B.get(j))) {
return false;
}
}
return true;
}