@Test public void testJoiner() throws Exception { Joiner joiner = Joiner.on(", "); assertEquals("A, B", joiner.join(Arrays.asList("A", "B"))); FunctionJoiner<StringWrapper> newJoiner = joiner .function(new Function<StringWrapper, String>() { @Nullable @Override public String apply(@Nullable StringWrapper input) { return input == null ? null : input.getString(); } }); assertEquals("A, B", newJoiner.join(Arrays.asList(new StringWrapper("A"), new StringWrapper("B")))); }
private Joiner(String separator) { this.joiner = com.google.common.base.Joiner.on(separator); }
Joiner { private Joiner(String separator) { this.joiner = com.google.common.base.Joiner.on(separator); } }
Joiner { private Joiner(String separator) { this.joiner = com.google.common.base.Joiner.on(separator); } private  Joiner(String separator); private  Joiner(Joiner prototype); private  Joiner(com.google.common.base.Joiner prototype); }
Joiner { private Joiner(String separator) { this.joiner = com.google.common.base.Joiner.on(separator); } private  Joiner(String separator); private  Joiner(Joiner prototype); private  Joiner(com.google.common.base.Joiner prototype); static Joiner on(String separator); static Joiner on(char separator); FunctionJoiner<T> function(Function<T, String> function); A appendTo(A appendable, Iterable<?> parts); A appendTo(A appendable, Iterator<?> parts); final A appendTo(A appendable, Object[] parts); final A appendTo(A appendable,
                                                 @Nullable Object first,
                                                 @Nullable Object second,
                                                 Object... rest); StringBuilder appendTo(StringBuilder builder, Iterable<?> parts); StringBuilder appendTo(StringBuilder builder, Iterator<?> parts); StringBuilder appendTo(StringBuilder builder, Object[] parts); StringBuilder appendTo(StringBuilder builder, @Nullable Object first,
                                @Nullable Object second, Object... rest); String join(Iterable<?> parts); String join(Iterator<?> parts); String join(Object[] parts); String join(@Nullable Object first, @Nullable Object second, Object... rest); @CheckReturnValue Joiner useForNull(String nullText); @CheckReturnValue Joiner skipNulls(); }
Joiner { private Joiner(String separator) { this.joiner = com.google.common.base.Joiner.on(separator); } private  Joiner(String separator); private  Joiner(Joiner prototype); private  Joiner(com.google.common.base.Joiner prototype); static Joiner on(String separator); static Joiner on(char separator); FunctionJoiner<T> function(Function<T, String> function); A appendTo(A appendable, Iterable<?> parts); A appendTo(A appendable, Iterator<?> parts); final A appendTo(A appendable, Object[] parts); final A appendTo(A appendable,
                                                 @Nullable Object first,
                                                 @Nullable Object second,
                                                 Object... rest); StringBuilder appendTo(StringBuilder builder, Iterable<?> parts); StringBuilder appendTo(StringBuilder builder, Iterator<?> parts); StringBuilder appendTo(StringBuilder builder, Object[] parts); StringBuilder appendTo(StringBuilder builder, @Nullable Object first,
                                @Nullable Object second, Object... rest); String join(Iterable<?> parts); String join(Iterator<?> parts); String join(Object[] parts); String join(@Nullable Object first, @Nullable Object second, Object... rest); @CheckReturnValue Joiner useForNull(String nullText); @CheckReturnValue Joiner skipNulls();  }