2014-09-17 3 views
0

Je suis à la recherche de nombreuses requêtes sur la façon d'obtenir l'ensemble d'intersection de 2 ensembles dans un temps efficace. Et en cherchant de manière très efficace. Avant d'aborder mon propre chemin, pourquoi ne pas demander à Java de construire une méthode pour faire la même chose. Pourquoi Java n'a-t-il pas construit une intersection menthod like sur la classe Collections comme la méthode de tri ou quelque part dans Collections? Une raison derrière tout cela?Intersection avec la collection Java

S'il vous plaît considérer c'est une discussion sur l'ajustement-tombe de l'intersection sur les ensembles.

Merci,

Répondre

2

Le plus proche, vous devez trouver l'intersection entre 2 Collection est retainAll(). Notez que retainAll ne renvoie pas un nouvel ensemble contenant une intersection mais modifie plutôt l'instance de jeu sur laquelle il est appelé. Par exemple :

import java.util.HashSet; 
import java.util.Set; 

class Test2 
{ 

    public static void main(String[] args) { 



     Set<String> set1 = new HashSet<>(); 
     set1.add("A"); 
     set1.add("B"); 

     Set<String> set2 = new HashSet<>(); 
     set2.add("A"); 
     set2.add("D"); 
     set1.retainAll(set2); 
     System.out.println(set1); 
    } 

    }