[ Java学习 ] toString方法 和 equals方法

/*

这篇博文整理自老师给我们的教案,主要讲的是 java中,object类中,的toString方法 和equals方法

*/

[ Java学习 ]类的其他文章汇总(都是超链接,可直接点击):

-------------------------------言归正传,进入本文的内容-------------------------------

所有类都从Object类继承。如果我们定义的类没有覆盖toString方法,则对象在调用toString方法时用的是Object类toString方法,返回的是“类名@hashcode".

同理,如果equals没有被覆盖,作用则是判断两个对象是否相同。

String类会覆盖上面两个方法,toString返回自身。equals则用于判断两个字符串的字符是否全部一样。所以我们在判断两个字符串是否一样时用的是equals。而用== 号则会判断两个对象是否一样,得到错误的结果。

例子如下:

package yangguo.snakegame;

import java.awt.FlowLayout;

public class Test

{

public static void main( String[] args ) throws Exception

{

Test test = new Test();

Test test2 = new Test();

String word = new String("it is a pratics");

String word2 = new String("it is a pratics");

System.out.println(test.toString());

System.out.println(test.equals(test2));

System.out.println(word.toString());

System.out.println(word.equals(word2));

}

}

//output

yangguo.snakegame.Test@ca0b6

false

it is a pratics

true

/* 这篇博文整理自老师给我们的教案,主要讲的是 java中,object类中,的toString方法 和equals方法 */ [ Java学习 ]类的其他文章汇总(都是超链接,可直接点击): -------------------------------言归正传,进入本文的内容------------------------------- 所有类都从Object类继承。如果我们定义的类没有覆盖toString方法,则对象在调用toString方法时用的是Object类toString方法,返回的是“类名@hashcode". 同理,如果equals没有被覆盖,作用则是判断两个对象是否相同。 String类会覆盖上面两个方法,toString返回自身。equals则用于判断两个字符串的字符是否全部一样。所以我们在判断两个字符串是否一样时用的是equals。而用== 号则会判断两个对象是否一样,得到错误的结果。 例子如下: package yangguo.snakegame; import java.awt.FlowLayout; public class Test { public static void main( String[] args ) throws Exception { Test test = new Test(); Test test2 = new Test(); String word = new String("it is a pratics"); String word2 = new String("it is a pratics"); System.out.println(test.toString()); System.out.println(test.equals(test2)); System.out.println(word.toString()); System.out.println(word.equals(word2)); } } //output yangguo.snakegame.Test@ca0b6 false it is a pratics true
经验分享 程序员 微信小程序 职场和发展