欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > > 文章正文

Java记录 -45,java记录-45

来源: javaer 分享于  点击 24283 次 点评:210

Java记录 -45,java记录-45


在使用集合时,都习惯性的使用循环遍历其中的每个元素。

想知道集合中的每个元素的信息,是不是必须要循环遍历每个元素呢?

比如在打印日志信息时,有些集合如List需要记录下来,一般都使用循环遍历集合,将集合中的每个元素的信息再记录下来,有没有更简便的方法呢?

对象的信息一般都会使用其toString()方法展示,那么集合的toString()方法又会展示什么信息呢?

下面通过一个简单的程序来探索下:

public class ArrayListTest2 {    public static void main(String[] args) {        ArrayList list = new ArrayList();        list.add(new Point(1,2));        list.add(new Point(3,4));                for(int i=0;i<list.size();i++){            System.out.println(list.get(i));        }        System.out.println(list); //打印list等同于打印其toString()方法。        //System.out.println(list.toString());    }}class Point{    int x, y;    Point(int x, int y){        this.x = x;        this.y = y;    }    @Override    public String toString() {        return "x=" + x + ", y=" + y;    }}

当我们不为Point类重写其toString()方法时,我们执行上面的代码,得到的打印结果如下:

my.arraylist.Point@c17164my.arraylist.Point@1fb8ee3[my.arraylist.Point@c17164, my.arraylist.Point@1fb8ee3]

但是,当我们为Point类重写其toString()方法时,我们又得到了下面的不同的结果:

x=1, y=2x=3, y=4[x=1, y=2, x=3, y=4]

相信通过上面的比较,我们就可以很明显的知道了List的toString()方法都做了哪些事情:

List的toString()方法调用了其存储的每个元素的toString()方法。


结论:当我们实现了需要记录的对象的toString()方法时,并将它们存放入了集合中时,想要打印记录其信息时,可以直接打印记录该集合即可,集合会将存放的每个元素继续打印记录。

相关文章

    暂无相关文章

用户点评