Como comparar cpf numa array list java

Java provides a method for comparing two Array List. The ArrayList.equals() is the method used for comparing two Array List. It compares the Array lists as, both Array lists should have the same size, and all corresponding pairs of elements in the two Array lists are equal.

Example:

Input : ArrayList1 = [1, 2, 3, 4], ArrayList2 = [1, 2, 3, 4] Output: Array List are equal Input : ArrayList1 = [1, 2, 3, 4], ArrayList2 = [4, 2, 3, 1] Output: Array List are not equal

Syntax:

boolean equals(Object o)

Parameters: This function has a single parameter which is an object to be compared for equality.

Returns: This method returns True if Array lists are equal.



Implementation:

import java.util.ArrayList;

    public static void main(String[] args)

        ArrayList<String> ArrayList1

            = new ArrayList<String>();

        ArrayList<String> ArrayList2

            = new ArrayList<String>();

        ArrayList1.add("item 1");

        ArrayList1.add("item 2");

        ArrayList1.add("item 3");

        ArrayList1.add("item 4");

        ArrayList2.add("item 1");

        ArrayList2.add("item 2");

        ArrayList2.add("item 3");

        ArrayList2.add("item 4");

        System.out.println(" ArrayList1 = " + ArrayList2);

        System.out.println(" ArrayList1 = " + ArrayList1);

        if (ArrayList1.equals(ArrayList2) == true) {

            System.out.println(" Array List are equal");

            System.out.println(" Array List are not equal");

            "\n Lets insert one more item in Array List 1");

        ArrayList1.add("item 5");

        System.out.println(" ArrayList1 = " + ArrayList1);

        System.out.println(" ArrayList = " + ArrayList2);

        if (ArrayList1.equals(ArrayList2) == true) {

            System.out.println(" Array List are equal");

            System.out.println(" Array List are not equal");

Output ArrayList1 = [item 1, item 2, item 3, item 4] ArrayList1 = [item 1, item 2, item 3, item 4] Array List are equal Lets insert one more item in Array List 1 ArrayList1 = [item 1, item 2, item 3, item 4, item 5] ArrayList = [item 1, item 2, item 3, item 4] Array List are not equal

Time Complexity: O(N), where N is the length of the Array list.


Learn to compare two arraylists in Java with simple examples. We will first test if two arraylists are equal or not. If both lists are not equal, we will find the difference between lists.

The difference in list is equals to another third list which contains either additional elements or missing elements.

Also learn to find common elements between two arraylists.

1. Compare two arraylists for equality

Java program to test if two given lists are equal. To test equality –

  • Sort both lists.
  • Compare both lists using equals() method.

List.equals() method return true if both elements are of same size and both contains same set of elements in exactly same order.

public class ArrayListExample { public static void main(String[] args) { ArrayList<String> listOne = new ArrayList<>(Arrays.asList("a", "b", "c", "d", "f")); ArrayList<String> listTwo = new ArrayList<>(Arrays.asList("a", "b", "c", "d", "e")); Collections.sort(listOne); Collections.sort(listTwo); //Compare unequal lists example boolean isEqual = listOne.equals(listTwo); //false System.out.println(isEqual); //Compare equals lists example ArrayList<String> listThree = new ArrayList<>(Arrays.asList("a", "b", "c", "d", "f")); isEqual = listOne.equals(listThree); //true System.out.println(isEqual); } }

Program output.

false true

2. Compare two arraylists – find additional elements

If two arraylists are not equal and we want to find what are additional elements in first list in comparison to second list then we can use this method.

It uses removeAll() method which removes all elements of second list from first list. It leaves only additonal elements in first list.

public class ArrayListExample { public static void main(String[] args) { ArrayList<String> listOne = new ArrayList<>(Arrays.asList("a", "b", "c", "d", "f")); ArrayList<String> listTwo = new ArrayList<>(Arrays.asList("a", "b", "c", "d", "e")); //remove all elements of second list listOne.removeAll(listTwo); System.out.println(listOne); } }

Program output.

[f]

3. Compare two arraylists – find missing elements

To get the missing elements in first list, which are present in second list, we can reverse the above example. Here we can remove all elements of first list from second list using removeAll() method.

public class ArrayListExample { public static void main(String[] args) { ArrayList<String> listOne = new ArrayList<>(Arrays.asList("a", "b", "c", "d", "f")); ArrayList<String> listTwo = new ArrayList<>(Arrays.asList("a", "b", "c", "d", "e")); //remove all elements from second list listTwo.removeAll(listOne); System.out.println(listTwo); } }

Program output.

[e]

4. Compare two arraylists – find common elements

To find common elements in two arraylists, use List.retainAll() method. This method retains only the elements in this list that are contained in the specified arraylist passed as method argument.

public class ArrayListExample { public static void main(String[] args) { ArrayList<String> listOne = new ArrayList<>(Arrays.asList("a", "b", "c", "d", "f")); ArrayList<String> listTwo = new ArrayList<>(Arrays.asList("a", "b", "c", "d", "e")); listOne.retainAll(listTwo); System.out.println(listOne); } }

Program output.

[a, b, c, d]

Above example will work good in Java 8 as well.

Happy Learning !!

Read More:

A Guide to Java ArrayList
ArrayList Java Docs

Let us know if you liked the post. That’s the only way we can improve.



A interface List em Java fornece métodos para comparar duas listas e encontrar os itens comuns e ausentes nas listas.



Compare duas listas não classificadas para igualdade

Se você quiser verificar se duas listas são iguais, ou seja, contêm os mesmos itens e aparecem no mesmo índice, podemos usar:

import java.util.Arrays; import java.util.List; public class CompareTwoLists { public static void main(String[] args) { List listOne = Arrays.asList('a', 'b', 'c'); List listTwo = Arrays.asList('a', 'b', 'c'); List listThree = Arrays.asList('c', 'a', 'b');boolean isEqual = listOne.equals(listTwo); System.out.println(isEqual);isEqual = listOne.equals(listThree); System.out.println(isEqual);

} }

Resultado:


true false

Como você pode ver o equals() método compara os itens e sua localização na lista.

Relacionado:




Compare duas listas classificadas

Duas listas contêm os mesmos itens?



Para comparar duas listas de igualdade apenas em termos de itens, independentemente de sua localização, precisamos usar o sort() método do Collections() aula.

Por exemplo:

import java.util.Arrays; import java.util.Collections; import java.util.List; public class CompareTwoLists { public static void main(String[] args) { List listOne = Arrays.asList('b', 'c', 'a'); List listTwo = Arrays.asList('a', 'c', 'b'); List listThree = Arrays.asList('c', 'a', 'b');Collections.sort(listOne); Collections.sort(listTwo); Collections.sort(listThree);boolean isEqual = listOne.equals(listTwo); System.out.println(isEqual);isEqual = listOne.equals(listThree); System.out.println(isEqual);

} }

Resultado:


true true

Compare duas listas, encontre diferenças

O List interface também fornece métodos para encontrar diferenças entre duas listas.

O removeAll() método compara duas listas e remove todos os itens comuns. O que resta são os itens adicionais ou ausentes.

Por exemplo, quando comparamos duas listas, listOne e listTwo e queremos descobrir quais itens estão faltando em listTwo nós usamos:

import java.util.ArrayList; import java.util.Arrays; public class CompareTwoArrayLists { public static void main(String[] args) { ArrayList listOne = new ArrayList(Arrays.asList(1, 2, 3, 4, 5));ArrayList listTwo = new ArrayList(Arrays.asList(1, 2, 4, 5, 6, 7));listOne.removeAll(listTwo);System.out.println('Missing items from listTwo ' + listOne);

} }

Resultado:


Missing items from listTwo [3]

Da mesma forma, se usássemos:

listTwo.removeAll(listOne); System.out.println('Missing items from listOne ' + listTwo);

Nós obteríamos:

Missing items from listOne [6, 7]

Compare duas listas, encontre itens comuns

O retainAll() método mantém apenas os itens que são comuns em ambas as listas. Por exemplo:

public class CompareTwoArrayLists { public static void main(String[] args) { ArrayList listOne = new ArrayList(Arrays.asList(1, 2, 3, 4, 5));ArrayList listTwo = new ArrayList(Arrays.asList(1, 2, 4, 5, 6, 7));listOne.retainAll(listTwo);System.out.println('Common items in both lists ' + listOne);

} }

Resultado:


Common items in both lists [1, 2, 4, 5]