Java记录 -45- List的toString方法
在使用集合时,都习惯性的使用循环遍历其中的每个元素。
想知道集合中的每个元素的信息,是不是必须要循环遍历每个元素呢?
比如在打印日志信息时,有些集合如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;}@Overridepublic String toString() {return "x=" + x + ", y=" + y;}
}
当我们不为Point类重写其toString()方法时,我们执行上面的代码,得到的打印结果如下:
my.arraylist.Point@c17164
my.arraylist.Point@1fb8ee3
[my.arraylist.Point@c17164, my.arraylist.Point@1fb8ee3]
但是,当我们为Point类重写其toString()方法时,我们又得到了下面的不同的结果:
x=1, y=2
x=3, y=4
[x=1, y=2, x=3, y=4]
相信通过上面的比较,我们就可以很明显的知道了List的toString()方法都做了哪些事情:
List的toString()方法调用了其存储的每个元素的toString()方法。
结论:当我们实现了需要记录的对象的toString()方法时,并将它们存放入了集合中时,想要打印记录其信息时,可以直接打印记录该集合即可,集合会将存放的每个元素继续打印记录。
转载于:https://blog.51cto.com/zlfwmm/1706168
Java记录 -45- List的toString方法相关推荐
- Java笔记:包装类、toString()方法、单例类、比较(==和equals方法)
1.包装类 1)包装类为基本数据类型提供了相应的引用数据类型. (基本数据类型-包装类) btye-Byte,char-Character,short-Short,float-Float int-In ...
- java重写的代码_java tostring方法重写代码示例
当需要将一个对象输出到显示器时,通常要调用他的toString()方法,将对象的内容转换为字符串.java中的所有类默认都有一个toString()方法 默认情况下 System.out.printl ...
- 【java基础】为什么重写toString()方法?
不得不说,有很多java初学者写java实体类的时候,并没有真正理解重写toString() 方法,可能是口头知道也可能是跟风随带添加toString() 方法,并没有真正理解其意义,如果真要被问起来 ...
- java lang tostring_java.lang.String.toString()方法实例
全屏 java.lang.String.toString() 方法表示以文本格式表示结果,并返回字符串本身. 声明 以下是java.lang.String.toString()方法的声明public ...
- java 默认tostring_【java基础】为什么重写toString()方法?
不得不说,有很多java初学者写java实体类的时候,并没有真正理解重写toString() 方法,可能是口头知道也可能是跟风随带添加toString() 方法,并没有真正理解其意义,如果真要被问起来 ...
- [转载] java重写toString()方法
参考链接: 在Java中重写toString() 前言: 在你兴高采烈的写完一个类,创建测试类时,创建对象,传入参数,调用对象,以为会得到参数值,但突然发现输出的是" 类名@什么东东?(其实 ...
- java 子类tostring,JAVA中Object类的toString()方法,objecttostring
JAVA中Object类的toString()方法,objecttostring toString public String toString() 返回该对象的字符串表示.通常,toString 方 ...
- java uuid静态方法_Java UUID toString()方法与示例
java uuid静态方法 UUID类toString()方法 (UUID Class toString() method) toString() method is available in jav ...
- 学习Java的第五天 | 定义方法 | 引用数据类型——类 | 访问权限-修饰符 | 全局变量与局部变量 | toString | 构造方法 | 方法重载
前面提到的,冒泡排序,二分查找,我们有时候写代码可能不止要查到一种数组的数据,这时候我们就很需要想循环那样的结构,来帮我们解决代码冗余的情况. 我们前面使用的main方法,是一个java程序的入口,我 ...
最新文章
- Mac 安装 MySQL-python 问题解决
- python如何调用c++numpy.ndarray代码_python – 在cython中使用numpy:定义ndarray数据类型/ ndims...
- stm32f103rb升级到stm32f103rc时代码移植注意事项
- C++中的类对象的内存分布以及虚函数表内存分布
- 计算机组装网上攒机,手把手教你攒电脑:组装电脑全过程
- 浅谈linux字符设备注册
- php 获取301 302的真实地址
- lua中的require、dofile、loadfile
- java8 函数式编程_您必须学习Java 8的函数式编程吗?
- a标签跳到另一个页面指定选项卡_HTML常用标签
- Caffe CuDNN版本与环境不同导致make错误
- CentOs基础操作指令(文件目录类)
- word2007修复工具_使用Word 2007作为博客工具
- GB2312区位码、编码表与编码规则
- windows释放GPU内存方法
- AI 搜房,贝壳找房的Milvus实践
- 你还不了解的OKRs-E是什么?
- 聚科技精英,享开源之美- 2019 Open Source Summit 主题演讲+项目亮点
- [微信支付 ] prepay_id 为空,可能出现的问题?微信支付失败
- java 生成当天日期 昨天日期
热门文章
- 关于header(Cache-control: private)
- debian 升级后mysql_教你在Debian和Ubuntu上升级MySQL
- latex 生成中文目录乱码问题解决
- python设计模式6-适配器模式
- 域控启用ldap_Windows 10 (的域控制器 LDAP 服务器) - Windows security | Microsoft Docs
- GC:垃圾回收机制及算法
- 二分的思想在算法中体现
- kafka图形化管理工具kafka-manager
- JVM堆外内存的回收机制分析
- rocketMq 顺序消费