Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java中,如何按某些属性或值拆分数组或列表?_Java_Arrays_List_Collections - Fatal编程技术网

在Java中,如何按某些属性或值拆分数组或列表?

在Java中,如何按某些属性或值拆分数组或列表?,java,arrays,list,collections,Java,Arrays,List,Collections,如果存在一个包含Foo对象的数组或列表,并且我想基于属性Foo.bar拆分集合,那么除了使用映射和遍历集合之外,Java中还有没有其他快速的方法 例如,假设列表如下所示: Foo.bar=1 Foo.bar=1 Foo.bar=2 Foo.bar=3 Foo.bar=3 Foo.bar=4 列表将被分成4个不同的列表,因为有4个不同的bar值。是的,有一个树集,您可以在其中添加不同的值。但也有覆盖等于方法 public boolean equals(Object anObject){ Fo

如果存在一个包含Foo对象的数组或列表,并且我想基于属性Foo.bar拆分集合,那么除了使用映射和遍历集合之外,Java中还有没有其他快速的方法

例如,假设列表如下所示:

  • Foo.bar=1
  • Foo.bar=1
  • Foo.bar=2
  • Foo.bar=3
  • Foo.bar=3
  • Foo.bar=4

  • 列表将被分成4个不同的列表,因为有4个不同的bar值。

    是的,有一个树集,您可以在其中添加不同的值。但也有覆盖等于方法

    public boolean equals(Object anObject){
       Foo f = (Foo) anObject;
       return f.bar==this.bar
    }
    

    没有使用映射的方法可能会有重复-_-