java – 选择集合中的第一个索引
发布时间:2020-12-15 08:44:42 所属栏目:Java 来源:网络整理
导读:我有时觉得我正在重新发明轮子. 我想知道在java / jakarta commons / guava /?中是否有任何实用程序方法,这将在集合中更深入并使用元素执行某些操作(测试,修改,删除). 我写了这个方法,现在我觉得有一些单行程可以做到. /** * Find index of first line that
我有时觉得我正在重新发明轮子.
我想知道在java / jakarta commons / guava /?中是否有任何实用程序方法,这将在集合中更深入并使用元素执行某些操作(测试,修改,删除). 我写了这个方法,现在我觉得有一些单行程可以做到. /** * Find index of first line that contains search string. */ public static int findIdx(List<String> list,String search) { for (int i = 0,n = list.size(); i < n; i++) if (list.get(i).contains(search)) return i; return -1; } 解决方法
Guava有一个带谓词的Iterables.indexOf:
int index = Iterables.indexOf(list,new Predicate<String> { @Override public boolean apply(String input) { return input.contains(search); } }); 不可否认,并不是更好 – 而且你需要进行搜索决赛.但至少在Java 8中,您将能够编写如下内容: int index = Iterables.indexOf(list,input => input.contains(search)); (或者至少是类似的东西.可能在扩展方法语法中……) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- java – 关于JScrollPane中JTable的列宽度
- 如何从java程序执行“javac和java命令”?
- 你如何在java中获得浮点数的尾数?
- 为什么java.util.Date将Year表示为“year-1900”?
- java – Eclipse中的JPA Project和EJB Project有什么区别?
- java – BuilderPattern中的逻辑
- java – 通过滑块视图将数据传递给另一个片段,并且没有按钮
- java – 方法参数级别的@ModelAttribute注释是什么意思?
- java – Seam3 / Weld – 找不到实体管理器
- java – 从给定的数字查找下一个最高的唯一编号