一些关于StringAPI的题目

一:知识点

1.字符串"你好北京"中每个字符占用2个内存字节数。字符串底层由字符数组构成,每个字符占用内存2个字节。

 2.重写toString

  一般对象都有这个方法,目的是将对象按字符串的方式输出出来。所有对象都继承了Object方法,如果不重写toString方法,输出的就是一个内存地址即哈希码值,格式为:类名+@+hashCode值。重写后即可按照自己的方式去输出。

  当使用控制台打印一个对象时,实际上println方法内部会自动调用对象的toString()方法

二:代码题

1.实现Point类的equals方法,具体逻辑为:成员变量x和y分别相等的Point对象被视为相等。

public class Point{

private int x;

private int y;

......

public boolean equals( Object obj){

   if ( ! (obj instanceof Point ) ) return false;

   if ( ! (Point)obj.x) == this.x && ( (Point)obj).y == this.y {

    return true;

}}}

使用instanceof 运算符判断一个对象是否属于Point类,若不判断,运行时会报错:ClassCastException.

原文地址:https://www.cnblogs.com/yuan-zhou/p/10193150.html