Arraylist<Integer> en Arraylist<String>

Bonsoir ,

Je dois convertir une Arraylist d'entier en arraylist de chaine de caractère, voici mon code mais ca ne marche pas et je vois pas comment faire.


Merci!!

4 réponses

  1. Bonjour

    Merci de poster le code et pas une image.
    Voir ici la procédure pour mettre de la couleur et garder l'indentation.
    0
    1. Voici mon code :

      import java.util.*;
      
      public class Enstring{
      
      	public static ArrayList<String> intToString(ArrayList<Integer> liste2){                       
      		ArrayList<Integer> oldList = liste2;
      		ArrayList<String> newList = new ArrayList<String>(oldList.size()); 
      		for (Integer myInt : oldList) { 
      		newList.add(String.valueOf(myInt)); 
      		}
      
      	return newList;
      	}
      }
      0
      1. Peux tu décrire précisément
        mais ca ne marche pas

        0
        1. les valeurs de ma liste ne sont pas converties en string, elles ne changent pas.
          0
        2. @karim113113Et t'as essayé ce que propose Kx?
          0
      2. Modérateur
        Bonjour,

        Je ne vois pas d'erreur dans ton code même si on peut simplifier un peu :

        public static List<String> intToString(List<Integer> intList){
            List<String> stringList = new ArrayList<>(intList.size());
            for (Integer n : intList) {
                stringList.add(String.valueOf(n));
            }
            return stringList;
        }
        La confiance n'exclut pas le contrôle
        1
        1. Modérateur
          Remarque : depuis Java 8, ce genre de traitements peuvent se faire avec des Stream ce qui évite de manipuler soit même les boucles.
          De plus, comme String.valueOf peut manipuler n'importe quel type d'objet, il n'est pas utile de se limiter aux Integer.

          public static List<String> toString(Collection<Object> collection){
              return collection.stream().map(String::valueOf).collect(Collectors.toList());
          }
          0