如何在android中打印对象列表

use*_*298 4 printing android listview object

我正在使用此代码在我的应用程序中显示未接来电,而我每次使用 Call 类来定义一个对象,然后将其存储在测试中如何在我的应用程序中打印测试列表中的所有对象?

 List<Call> callList = new ArrayList<Call>();
        while (c.moveToNext()) {
            Call call = new Call();
            call.setNumber(c.getString(c.getColumnIndex(CallLog.Calls.NUMBER)));
           /* if (c.getInt(c.getColumnIndex(CallLog.Calls.TYPE)) == CallLog.Calls.OUTGOING_TYPE) {
                call.setOut(true);
            } else {
                call.setOut(false);
            }*/

            call.setName(c.getString(c.getColumnIndex(CallLog.Calls.CACHED_NAME)));
            call.setTime(c.getLong(c.getColumnIndex(CallLog.Calls.DATE)));
            call.setDuration(c.getLong(c.getColumnIndex(CallLog.Calls.DURATION)));

            if ( c.getString(c.getColumnIndex(CallLog.Calls.CACHED_NAME))!= null) 
            {
                continue;
            }

            callList.add(call);
        }
        c.close();
        }
Run Code Online (Sandbox Code Playgroud)

Sha*_*tan 5

您可以覆盖类上的toString()方法,Call例如:

    @Override
    public String toString() {

        return Name+" "+Time+" "+Duration;
    }
Run Code Online (Sandbox Code Playgroud)

并在 for 语句中打印您的列表,例如:

for (int i = 0 ; i < callList.size() ; i++)
    Log.d("value is" , callList.get(i).toString()); 
Run Code Online (Sandbox Code Playgroud)