java – 如何计算arraylist中特定类的实例数?

我有一个数组列表,看起来像:
[new Class1(),new Class2(),new Class1(),new Class1()]

我想知道在数组列表中提取Class1实例数的最有效方法.

对于上面的例子,我想要答案3.

我使用的是Java版“1.7.0_79”.

解决方法

如果arraylist如下所示,
newClass1 = new Class1();

[newClass1,newClass1,newClass1]

然后你可以检查下面的频率,

Collections.frequency(arrayList,newClass1);

如果您总是添加Class1的新实例,那么下面将是解决方

[new Class1(),new Class1()]

覆盖等于Class1中的方法,如下所示,

@Override
public boolean equals(Object o){

    if(!(o instanceof Class1 )){
        return false;
    }else{

            return true;
    }
}

然后在你的测试课上,

System.out.println(Collections.frequency(array,new Class1()));

相关文章

ArrayList简介:ArrayList 的底层是数组队列,相当于动态数组。与 Java 中的数组相比,它的容量能动态增...
一、进程与线程 进程:是代码在数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位。 线程...
本文为博客园作者所写: 一寸HUI,个人博客地址:https://www.cnblogs.com/zsql/ 简单的一个类...
#############java面向对象详解#############1、面向对象基本概念2、类与对象3、类和对象的定义格式4、...
一、什么是异常? 异常就是有异于常态,和正常情况不一样,有错误出错。在java中,阻止当前方法或作用域...
Collection接口 Collection接口 Collection接口 Collection是最基本的集合接口,一个Collection代表一组...