instanceof 关键字用法(比较两个对象的大小)

一、instanceof 关键字用法

instanceof 是 Java 的一个二元操作符,类似于 ==,>,< 等操作符。 instanceof 是 Java的保留关键字。它的作用是测试它左边的对象是否是它右边的类的实例,返回 boolean 的数据类型。
以下实例创建了displayObjectClass() 方法来演示 Java instanceof 关键字用法:

/*
 author by runoob.com
 Main.java
 */
import java.util.ArrayList;
import java.util.Vector;
 
public class Main {
 
public static void main(String[] args) {
   Object testObject = new ArrayList();
      displayObjectClass(testObject);
   }
   public static void displayObjectClass(Object o) {
      if (o instanceof Vector)
      System.out.println("对象是 java.util.Vector 类的实例");
      else if (o instanceof ArrayList)
      System.out.println("对象是 java.util.ArrayList 类的实例");
      else
      System.out.println("对象是 " + o.getClass() + " 类的实例");
   }
}

结果是:对象是 java.util.ArrayList 类的实例

二、比较两个对象的大小示例:通常java中比较两个对象的大小时会用到instanceof

class ComparableCircle extends Circle implements CompareObject{
	public ComparableCircle(int radius) {
		super(radius);
	}

	// Circle类声明属性,并提供方法
class Circle{
	int radius;

	public Circle() {

	}

	public Circle(int radius) {
		this.radius = radius;
	}
	public int getRadius() {
		return radius;
	}

	public void setRadius(int radius) {
		this.radius = radius;
	}


}
public int compareTo(Object o) {
		// 写具体的比较,如果返回0,则代表相等;如果正数,则当前对象大;如果负数,则当前对象小
		if (this == o)
			return 0;
		if (o instanceof ComparableCircle){
			ComparableCircle c = (ComparableCircle)o;
			if (this.getRadius() > c.getRadius())
				return 1;
			else if (this.getRadius() < c.getRadius())
				return -1;
			else
				return 0;
		}else {
			return 0;

		}

	}
}

转载:https://www.runoob.com/java/method-instanceof.html.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值