`

自定义类的equals函数

    博客分类:
  • Java
 
阅读更多
仅作笔记使用
public class VectorQueue {

	private final Vector<VectorItem> queue;

	private class VectorItem {
		private final Object item;
		private final int quantity;

		public VectorItem(Object item, Integer quantity) {
			this.item = item;
			this.quantity = quantity;
		}

		@Override
		public boolean equals(Object o) {
			if (o instanceof VectorItem) {
				return this.item.equals(((VectorItem) o).item);
			}
			return false;
		}

		@Override
		public int hashCode() {
			return this.item.hashCode();
		}
	}

	public VectorQueue() {
		this.queue = new Vector<VectorItem>(10);
	}

	public void removeItem(Object item) {
		queue.removeElement(new VectorItem(item, null));
	}

	public boolean isQueued(Object item) {
		return queue.contains(new VectorItem(item, null));
	}
}
分享到:
评论

相关推荐

    实验2 类和继承(4学时)

    2、编写类Factorial,为其添加两个静态方法(方法名自定义)。其中一个使用递归计算n的阶乘,一个使用非递归计算n的阶乘。构造main方法进行测试。 3、按照要求使用Java进行编码。 设计一个教师类Teacher,属性有编号...

    提高C#编程水平的50个要点

    总是为自定义类重载 ToString 方法  6.区别值类型和引用类型  7.使用不可变的值类型(Immutable Atomic Value Types)  8.在值类型中,确保0是一个合法的数据  9.理解 ReferenceEquals, static Equals, instance ...

    javaSE代码实例

    14.6.6 自定义满足Sorted集合的类 293 14.6.7 定制SortedSet的排序规则 296 14.6.8 集合的遍历 298 14.6.9 使用for-each循环遍历集合 300 14.7 映射集 301 14.7.1 Map接口及含义 301 14.7.2 HashMap类...

    net学习笔记及其他代码应用

    抽象类可以实现(implements)接口,抽象类是否可继承实体类,但前提是实体类必须有明确的构造函数。 41.构造器Constructor是否可被override? 答:构造器Constructor不能被继承,因此不能重写Overriding,但可以被...

    java编程基础,应用与实例

    8.10 “==”与equals() 130 8.11 Object型引用变量 132 8.12 类的层级图 134 8.13 巩固练习 135 第9章 抽象类与接口 136 9.1 抽象类 136 9.2 final关键字 138 9.3 接口 139 9.4 Cloneable 接口 ...

    java常用工具类的使用

    该类的大部分构造器和方法都已经过时,但是该类使用非常方便,因此目前使用还很普遍,该类的另一个主要功能是,在数据库操作中,它允许将毫秒值表示为SQL DATE值,是数据库操作中java.sql.Date的父类。关于数据库...

    疯狂JAVA讲义

    10.4.2 自定义异常类 371 10.4.3 catch和throw同时使用 371 10.4.4 异常链 373 10.5 Java的异常跟踪栈 374 10.6 异常处理规则 376 10.6.1 不要过度使用异常 377 10.6.2 不要使用过于庞大的try块 378 10.6.3 ...

    meteor-embox-value

    Embox值 ... 或者,对于您自己的类,一个自定义比较器。 options.lazy如果为true ,它将使用LazyBox而不是Box 。 如果未在React式计算中使用结果,则LazyBox将停止计算。 当需要更长的时间时,还应

    Equ:.NET的快速,基于约定的零代码相等函数

    qu Equ是一个.NET Standard库,可为您的类型提供快速的,基于约定的相等操作。 这主要用于自定义值类型(就,而不是struct... MemberwiseEquatable使用基于字段的相等性,因此您的类将获得考虑所有字段的Equals()和Get

    java课程实验

    2) 为Teacher类添加方法equals;(当两个教师对象的no相同时返回true) 3) 为Teacher类添加方法toString,通过该方法可以返回“编号为**、姓名为**、年龄为**的**学院老师”形式的字符串。 4) 构造main方法进行测试...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    实例185 自定义泛型化数组类 235 实例186 泛型方法与数据查询 236 实例187 泛型化方法与最小值 238 实例188 泛型化接口与最大值 239 实例189 使用通配符增强泛型 240 实例190 泛型化的折半查找法 241 第9章 编程常用...

    java 面试题 总结

    新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。 3.封装: 封装是把...

Global site tag (gtag.js) - Google Analytics