web-dev-qa-db-fra.com

Imprimer une liste <String> dans logcat

Je peux voir que le log.d nécessite

Log.d(String TAG, String). 

Comment imprimer sur le Android debug logcat une liste de chaînes au lieu d'une simple chaîne?

15
johnsonjp34

Utilisez la méthode toString () qui est disponible pour les structures de données les plus courantes:

Log.d("list", list.toString());

L'instruction ci-dessus vous donnera le résultat attendu si vous déclarez votre List/Collection en utilisant type générique défini en Java. Tels que String, Integer, Long etc. Cause, ils ont tous implémenté la méthode toString().

Type générique personnalisé:

Mais si vous déclarez le List en utilisant votre propre type personnalisé, vous n'obtiendrez pas une sortie correcte en appelant simplement list.toString(). Vous devez implémenter la méthode toString() pour votre type personnalisé pour obtenir la sortie attendue.

Par exemple:

Vous avez une classe de modèle nommée Dog comme ci-dessous

public class Dog{
   String breed;
   int ageC
   String color; 
}

Vous avez déclaré un List en utilisant le type Dog

List<Dog> dogList = new ArrayList<Dog>();

Maintenant, si vous souhaitez imprimer correctement cette liste dans LogCat, vous devez implémenter la méthode toString() dans la classe Dog.

public class Dog{
   String breed;
   int age
   String color;

   String toString(){
       return "Breed : " + breed + "\nAge : " + age + "\nColor : " + color;
   } 
}

Maintenant, vous obtiendrez un résultat correct si vous appelez list.toString().

32
Hamid Shatu
if (list != null && list.size() > 0)
                {
                    for (int i = 0; i < list.size(); i++) {
                        mStrp = mStrp + list.get(i).getdataname() + "/";
                        mStrD  = mStrD + list.get(i).getdata2name() + "/";
                    }

                    //if you want to delete last "/"
                mStrp = mStrLatPick.substring(0,mStrLatPick.length() - 1);

                    value = mStrp + mStrD;
                    Log.d("value",value);
                }
0
Shaikh Mohib