Find Common elements in array

public static void findCommon() {
          ArrayList<String> list1 = new ArrayList<String>();
          ArrayList<String> list2 = new ArrayList<String>();
    
          // Add values in ArrayList
          list1.add("Hii");
          list1.add("Geeks");
          list1.add("for");
          list1.add("Geeks");
          System.out.println("List1: " + list1);

          list2.add("Hii");
          list2.add("Geeks");
          list2.add("Gaurav");
          System.out.println("List2: "+ list2);
    
          // USE Collections1.retainAll(Collections2)
          // This method keeps only the common elements of both Collection in Collection1.
          list1.retainAll(list2);         
          
          System.out.println("Common elements: "+ list1);
    	  
          // if we need to keep list1
          ArrayList<String> list3 = new ArrayList<String>(list1);

	      // Store the comparison output in ArrayList list3
	      list3.retainAll(list2);  
	      
	      // Using Stream
	      list1.stream().filter(list2::contains).collect(Collectors.toList());
          
	      /////////////// Straight traverse
	      for (String temp : list1) {
	            if (list2.contains(temp)) {
	                // Since present, add it to list3
	                list3.add(temp);
	            }
	        }
	        System.out.println("Common elements: " + list3);
	      
    	  
      
      }