打印列表<字符串>以记录

我可以看到 log.d 需要

Log.d(String TAG, String). 

如何将列表字符串(而不仅仅是字符串)打印到 Android 调试日志?


答案 1

使用 toString() 方法,该方法可用于最常见的数据结构:

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

如果您使用 Java 中定义的泛型类型声明 /,上述语句将为您提供预期的结果。如字符串,整数,长等。原因,他们都实现了方法。ListCollectiontoString()

自定义泛型类型:

但是,如果您使用自己的自定义类型声明,则仅通过调用 .b 将无法获得正确的输出。您需要为自定义类型实现方法才能获得预期的输出。Listlist.toString()toString()

例如:

您有一个名为以下内容的模型类Dog

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

您声明了 using 类型ListDog

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

现在,如果你想正确地打印这个列表,那么你需要在类中实现方法。LogCattoString()Dog

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

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

现在,如果您调用.,您将获得正确的结果。list.toString()


答案 2
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);
                }