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_Swing_List - Fatal编程技术网

Java 从列表中多选

Java 从列表中多选,java,swing,list,Java,Swing,List,在我的Java应用程序中,我需要从列表中进行某种多重选择,除了这样一个自我实现的函数外,还有其他方法吗: private List<T> list = someListClass(); //Contains the data public List<T> getByKey(Key key){ List<T> returnList = someListClass(); for(Element e : list){ if(e.qualif

在我的Java应用程序中,我需要从列表中进行某种多重选择,除了这样一个自我实现的函数外,还有其他方法吗:

private List<T> list = someListClass(); //Contains the data

public List<T> getByKey(Key key){
   List<T> returnList = someListClass();
   for(Element e : list){
      if(e.qualifiedBy(key)) returnList.add(e);
   }
   return returnList;
}
private List=someListClass()//包含数据
公共列表getByKey(Key){
List returnList=someListClass();
对于(元素e:列表){
如果(e.qualifiedBy(key))返回列表,则添加(e);
}
退货清单;
}
您的方法很好

使用Java8 lambdas,上述内容将更容易编写:

public List<T> getByKey(Key key){
    return list.stream().filter(e -> e.qualifiedBy(key)).into(someListClass());
}
public List getByKey(Key){
返回list.stream().filter(e->e.qualifiedBy(key)).into(someListClass());
}

但在此之前,您拥有的是最简单的东西。

您的函数在我看来很好。在JDk中,是否有列表类提供此功能?