abstract class Tmp<T> { | |
private String concat(Tmp<String> tmp) { | |
return tmp.collect(StringBuilder::new, StringBuilder::append, StringBuilder::append).toString(); | |
} | |
abstract <R> R collect(Supplier<R> supplier, | |
BiConsumer<R, ? super T> accumulator, | |
BiConsumer<R, R> combiner); | |
interface Supplier<T> { | |
T get(); | |
} | |
interface BiConsumer<T, U> { | |
void accept(T t, U u); | |
} | |
} |