记录平时遇到的一些精巧的小代码段
创建元组
摘自 On Java 8 泛型章节。元组的定义:用户只能取值而不能设置值,所以这里没有使用 getter/setter 的封装形式,而是使用 public + final 关键字实现了该功能。
1 2 3 4 5 6 7 8 9 10 11
| public class Tuple2<A, B> { public final A a1; public final B a2; public Tuple2(A a, B b) { a1 = a; a2 = b; } public String rep() { return a1 + ", " + a2; }
@Override public String toString() { return "(" + rep() + ")"; } }
|
lambda
实现 interface
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| public class TestLambda { private MyPrint print;
@Test public void test() { print = System.out::println; print.print("jack"); } }
interface MyPrint { void print(String name); }
|
判断 collection 中是否包含某元素
1
| Arrays.asList(1, 2, 3).stream.anyMatch(sub -> sub > 3);
|