Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Candidat au Club
    Comparer les elements de deux tableaux de tableaux String
    bonjour , j'essaye de comparer les elements de type string de deux arraylists de tableaux string,
    la methode retourne le nombre d elements valides sans tenir compte de la case,
    j ai ecris ma methode mais une erreur d exception est lancee a chaque fois.
    voila mon code

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    public int taille (ArrayList<String[]> ta1, ArrayList<String[]> ta2) {
    		ArrayList<String[]> c2 = new ArrayList<>();
    		for (int i = 0; i < ta1.size(); i++) {
     
    			boolean trouve = false;
    			for (int j = 0; j < ta2.size(); j++) {
     
    				for (int o = 0; o < ta1.get(i)[o].length(); o++) {
     
    				for (int k = 0; k < ta2.get(j)[k].length(); k++) {
     
    						if (ta1.get(i)[o].equalsIgnoreCase((ta2.get(j)[k])) && !trouve) {
    							c2.add(ta1.get(i));
    							trouve = true;
    						}
    					}
     
    				}
    			}
    		}
    		return c2.size();
    	}

    Merci pour votre aide

  2. #2
    Membre habitué
    Est-ce que ça t'aide:
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    public int taille (ArrayList<String[]> ta1, ArrayList<String[]> ta2) {
    		ArrayList<String> liste1 = newList (ta1);
                    ArrayList<String> liste2 = newList (ta2);
     
                    int retour = 0;
     
    		for (String string1 : liste1) {
    			for (String string2 : liste2) {
     
    				if (string1.equalsIgnoreCase(string2)) {
    						retour++;
    				}
    			}
    		}
    		return retour;
    }
     
    public  ArrayList<String> newList (ArrayList<String[]> liste) {
                   ArrayList<String> retour = new ArrayList<String>();
                   for(String[] tab : liste){
                            String ligne = "";
                            for(String s : tab){
                                      ligne += " "+ s;
                            }
                            retour.add(ligne);
                   }
                   return retour;
    }
    Des jours c'est facile, des jours c'est pas facile, mais c'est jamais le même jour.