toString()方法:

java.lang.Object类的toString()方法的定义如下:

public String toString(){

return getClass().getName()+"@"+Integer.toHexString(hashCode());

}

1.当打印一个对象的引用时,实际上默认调用的就是这个对象的toString()方法

2.当打印的对象所在的类没有重写Object中的toString()方法时, 那么调用的就是Object中定义toString()方法。

返回此对象所在的类及对应的堆空间实体的首地址值。

3.当打印的对象所在的类重写了toString()方法时,调用的就是我们自己重写的toString()方法;

注:常这样重写:将对象的属性信息返回,

4.像String类   包装类,File类  Date类等,已经实现了Object类中toString()方法的重写。

TestToString:

package com.aff.equals;

import java.util.Date;

import com.aff.java1.Person;

public class TestToString {
public static void main(String[] args) {
Person p1 = new Person("AA", 10);
System.out.println(p1.toString());// com.aff.java1.Person@6d06d69c
System.out.println(p1);// com.aff.java1.Person@6d06d69c String str = "AA";
String str1 = new String("BB");
System.out.println(str);
System.out.println(str1.toString()); Date d = new Date();
System.out.println(d);
} } 输出结果:

com.aff.java1.Person@6d06d69c
com.aff.java1.Person@6d06d69c
AA
BB
Wed Mar 18 19:14:58 CST 2020

 

注意:double类型转为String类型 :String.valueOf(radius)

e2:

Circle:

package com.aff.equals;

public class Circle extends GeometricObject {
private double radius; public Circle() {
super();
this.radius = 1.0;
} public Circle(double radius) {
super();
this.radius = radius;
} public Circle(double radius, String color, double weight) {
super(color, weight);
this.radius = radius;
} public double getRadius() {
return radius;
} public void setRadius(double radius) {
this.radius = radius;
} // 圆的面积
public double findArea() {
return Math.PI * radius * radius;
} // 重写equals()方法和toString() public boolean equals(Object obj) {
if (this == obj) {
return true;
} else if (obj instanceof Circle) {
Circle c = (Circle) obj;
return this.radius == c.radius;
} else {
return false;
}
} @Override
public String toString() {
return "Circle [radius=" + radius + "]";
} /* public String toString() {
return radius + "";
}*/ }

GeometricObject:

package com.aff.equals;

public class GeometricObject {
protected String color;
protected double weight; public GeometricObject() {
super();
this.color = "white";
this.weight = 1.0;
} public GeometricObject(String color, double weight) {
super();
this.color = color;
this.weight = weight;
} public String getColor() {
return color;
} public void setColor(String color) {
this.color = color;
} public double getWeight() {
return weight;
} public void setWeight(double weight) {
this.weight = weight;
} }

TestCircle:

package com.aff.equals;

public class TestCircle {
public static void main(String[] args) {
Circle c1 = new Circle(2.3);
Circle c2 = new Circle(2.3);
System.out.println(c1.equals(c2));// false-->true
System.out.println(c1.toString());
}
} 输出结果:

true
Circle [radius=2.3]

 

toString()方法的使用的更多相关文章

  1. 采用重写tostring方法使ComboBox显示对象属性

    当ComboBox中添加的是对象集合的时候,如果运行就会发现显示是的命令空间.类名,而如果我们想显示对象属性名的时候,我们就可以在对象类中重写object基类中的tostring方法.

  2. ECMAScript toString() 方法

    ECMAScript 定义所有对象都有 toString() 方法,无论它是伪对象,还是真对象. ECMAScript 的 Boolean 值.数字和字符串的原始值的有趣之处在于它们是伪对象,这意味着 ...

  3. 利用Object.prototype.toString方法,实现比typeof更准确的type校验

    Object.prototype.toString方法返回对象的类型字符串,因此可以用来判断一个值的类型. 调用方法: Object.prototype.toString.call(value) 不同 ...

  4. 重写toString()方法来描述一个类

    package com.zch.test; /* toString方法以及重写toString方法 toString方法是一个自我描述方法 方法本身返回的是该对象的实现类的 类名 + @ + hash ...

  5. Object类的toString方法

          Object类是所有Java类的祖先.每个类都使用 Object 作为超类.所有对象(包括数组)都实现这个类的方法.在不明确给出超类的情况下,Java会自动把Object作为要定义类的超类 ...

  6. 100怎么变成100.00 || undefined在数字环境下是:NaN || null在数字环境下是0 || 数组的toString()方法把每个元素变成字符串,拼在一起以逗号隔开 || 空数组转换成字符串后是什么?

    100怎么变成100.00?

  7. js中的tostring()方法

    http://blog.sina.com.cn/s/blog_85c1dc100101bxgg.html js中的tostring()方法 (2013-11-12 11:07:43) 转载▼ 标签: ...

  8. JavaBean的toString方法工具类

    import java.lang.reflect.Field;import java.lang.reflect.InvocationTargetException;import java.lang.r ...

  9. toString()方法

    前面的话 本文将介绍toString()方法,toString()方法返回反映这个对象的字符串 [1]undefined和null没有toString()方法 undefined.toString() ...

  10. 为何重写toString方法后会使哈希码能够打印出来

    首先还是推荐lz看源代码 简单的讲之所以调用了toString()方法,不是什么编译器默认的,而是因为lz你调用的是out.print()方法仔细看源代码,在PringStream类中,print方法 ...

随机推荐

  1. python(类继承)

    一.继承 1.单继承 一个对象使用另一个对象的属性和方法,被继承的类也称父类 (1)父类与子类的方法不一样 class Four(): def sub(self,x,y): return x + y ...

  2. 一个简单的wed服务器SHTTPD(4)————SHTTPD支持CGI的实现

    //start from the very beginning,and to create greatness //@author: Chuangwei Lin //@E-mail:979951191 ...

  3. tinymce富文本编辑器整合到django

    第一步:定义表存图片路径 models.py class AdminIMG(models.Model):     filename = models.CharField(max_length=200, ...

  4. Jmeter-接口测试参数化后循环断言不同内容的方法

    前言 各位小伙伴在做接口自动化有没遇到过这样的问题,CSV文件参数化测试数据后,只能通过人工的的方法去查看结果,不懂写代码去循环断言返回的结果.今天我们来学习一下,不用写代码,就用响应断言,怎么实现循 ...

  5. 解决MySQL 8.0数据库出现乱码的问题

    1.在MySQL 8.0的安装目录下创建一个my.ini文件(保存为utf8格式),然后写入以下内容: [mysql] # 设置mysql客户端默认编码 default-character-set=u ...

  6. Node教程——封装一个token验证器

    重要说明 这个轮子是 使用 express@5.0 + MongoDB构建起来的一个 node后台通用的验证器,里面主要讲的就是使用jwt,token进行验证,当然你想使用session也没问题,但是 ...

  7. failed parsing overlays.

    clearn + rebuild + 重新运行: 删掉模拟器进程 + 重新运行:

  8. 【疑问】SQLServer_DNS注入数据库因为点号不能显示数据库的库名的方法[语音和音乐]

    你好,欢迎关注我的网站: www.leosec.net

  9. XCode Interface Builder开发——1

    XCode Interface Builder开发--1 创建Xcode项目 选择第二个选项 选择Single View App,点击Next 设置完后点击Next Xcode基本面板 导航面板 工具 ...

  10. protus中出现invalid internal memory size ==NULL

    点击8086芯片,更改internal memory size的大小为0x10000