怎样推广一个网站,东莞市建设工程检测中心网站,网站后台管理系统内容,阿里云服务器建设网站本问题已经有最佳答案#xff0c;请猛点这里访问。如何从Java ARAYLIST中筛选出一些东西#xff0c;如#xff1a;你好吗#xff1f;你怎么做乔迈克过滤器是怎样的#xff0c;它可以去除乔和迈克。这可能有助于stackoverflow.com/questions/122105/helli…本问题已经有最佳答案请猛点这里访问。如何从Java ARAYLIST中筛选出一些东西如你好吗你怎么做乔迈克过滤器是怎样的它可以去除乔和迈克。这可能有助于stackoverflow.com/questions/122105/hellip最好的解决方案是使用其他的收集数据结构而不是arraylist:code.google.com/p/google-collections在Java-8中他们引入了以Predicate为参数的方法removeIf。所以很容易做到List list new ArrayList(Arrays.asList(How are you,How you doing,Joe,Mike));list.removeIf(s - !s.contains(How));调用需要API级别24也许最好的方法是用番石榴List list new ArrayList();list.add(How are you);list.add(How you doing);list.add(Joe);list.add(Mike);Collection filtered Collections2.filter(list,Predicates.containsPattern(How));print(filtered);印刷品How are youHow you doing如果要将筛选后的集合作为列表可以使用此项(也可以从guava获取)List filteredList Lists.newArrayList(Collections2.filter(list, Predicates.containsPattern(How)));集体2中的2是什么DavoudTaghawi Nejad这可能是因为在标准Java中已经有EDCOX1 1类。所以很明显哪个类是哪个类如果它们在一个类中使用那么您不必使用完全限定名来区分它们。在android中它不能解决谓词作为谓词时的给出错误。知道了。。我使用了错误的库..现在我用的是guava-16.0.1.jar如何过滤不是如何的字符串泰美得使用not()filter(list, not(Predicates.containsPattern(How))。遍历列表并检查是否包含字符串how如果包含字符串则将其删除。您可以使用以下代码// need to construct a new ArrayList otherwise remove operation will not be supportedList list new ArrayList(Arrays.asList(new String[]{How are you?,How you doing?,Joe,Mike}));System.out.println(List Before: list);for (Iterator itlist.iterator(); it.hasNext();) {if (!it.next().contains(How))it.remove(); // NOTE: Iterators remove method, not ArrayLists, is used.}System.out.println(List After: list);输出List Before: [How are you?, How you doing?, Joe, Mike]List After: [How are you?, How you doing?]下一步()在第一次调用它时返回什么第一次调用it.next()将返回集合(list)中的第一个项。我喜欢这个因为它是最简单的不涉及第三方图书馆。给自己写一个过滤函数public List filter(Predicate criteria, List list) {return list.stream().filter(criteria).collect(Collectors.toList());}然后使用list new Test().filter(x - x 2, list);这是Java中最简洁的版本但是需要JDK 1.8来支持lambda演算。我同意先前的答案谷歌的番石榴可能在这里帮助很大可读性方面final Iterables.removeIf(list, new Predicate() {Overridepublic boolean apply(String input) {if(input.contains(How)) { //or more complex pattern matchingreturn true;}return false;}});请注意这基本上是一个guava的副本——如何根据谓词从列表中删除以跟踪删除的内容由于您没有给我们太多信息我假设您编写代码的语言是C。首先首选System.Collections.Generic.List而不是ArrayList。第二一种方法是循环遍历列表中的每一项并检查它是否包含how。另一种方法是使用LINQ。下面是一个快速的例子它过滤掉了所有不包含如何的项目var list new List();list.AddRange(new string[] {How are you?,How you doing?,Joe,Mike, });foreach (string str in list.Where(s s.Contains(How))){Console.WriteLine(str);}Console.ReadLine();因为你没有给我们很多信息但有你的信息帖子被标记为Java。新建大检查编辑历史记录…StAccOfFult.COM/PASS/9146224/修订Java标签在该答案之后被添加。