初学Java,toString

C#里面也有个ToString,注意大小写的不同

Java的toString的和C#的ToString完全不是同一概念,首先toString是一个"自我描述"的方法,然后它可以被重写

  1. public class Person    
  2. {  
  3.     private String name;  
  4.     public Person(String name)  
  5.     {  
  6.         this.name = name;  
  7.     }  
  8.     public void info()  
  9.     {  
  10.         System.out.println("此人名为: " + name);  
  11.     }  
  12. }  
  13.   
  14. public class PrintObject   
  15. {  
  16.     public static void main(String[] args)   
  17.     {  
  18.         Person p = new Person("孙悟空");  
  19.         System.out.println(p);  
  20.     }  
  21. }  

这里面println(p)默认调用了toString方法,和println(p.toString())是等同的效果

最后打印出的结果为Person@9945ce,@后面16进制数可能发生改变.这个toString方法是由Object类提供的,它返回的是类名+@+hashCode 值.

最后如果需要自定义toString的内容,就必须重写该方法

  1. public class  Apple  
  2. {  
  3.     private String color;  
  4.     private double weight;  
  5.     public Apple(){}  
  6.     public Apple(String color,double weight)  
  7.     {  
  8.         this.color = color;  
  9.         this.weight = weight;  
  10.     }  
  11.         public String toString()  
  12.     {  
  13.         return "一个苹果,颜色是: " + color + ", 重量是: " + weight;  
  14.     }  
  15. }  
  16.   
  17. public class TestToString    
  18. {  
  19.     public static void main(String[] args)   
  20.     {  
  21.         Apple a = new Apple("红色",5.68);  
  22.         System.out.println(a);  
  23.     }  
  24. }  

输出结果: 一个苹果,颜色是:红色,重量是:5.68

toString的格式可以改为如下更清晰的格式

类名[属性 1=值 1, 属性 2 = 值 2,...] 

  1. public String toString()  
  2. {  
  3.        return "Apple[color=" + color + ",weight=" + weight + "]";  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值