String Container
Feb 10th, 2020 - Now
字符串拼接
String a = "abc"; String b = a + "efg";String a = "abc"; String b = a.concat(",").concat(a);StringBuilder a = new StringBuilder("init"); String b = "abc"; a = a.append(b); StringBuilder c = a.append("end"); // c="initabcend"// 查看 StringBuffer 的 append 方法: public synchronized StringBuffer append(String str) { toStringCache = null; super.append(str); return this; }String []list = {"abc", "def", "ghi"}; String a = StringUtils.join(list, "-"); // a="abc-def-ghi"// Java Doc 的介绍 // A StringJoiner may be employed to create formatted output // from a Stream using Collectors.joining(CharSequence) // 构造函数 StringJoiner(CharSequence delimiter); StringJoiner(CharSequence delimiter, CharSequence prefix, CharSequence suffix); // 普通操作 StringJoiner sj = new StringJoiner("COOKIE"); // 注意这里是分隔符不是初始值 sj.add("abc"); sj.add("def"); System.out.println(sj.toString()); // abcCOOKIEdef StringJoiner sj1 = new StringJoiner("-","begin:",":end"); sj1.add("abc").add("def"); System.out.println(sj1.toString()); // begin:abc-def:end // 流操作 List<String> list = ImmutableList.of("abc","def","ghi"); list.stream().collect(Collectors.joining("-")); // "abc-def-ghi" // 上面的 Collectors.joining() 源码 public static Collector<CharSequence, ?, String> joining(CharSequence delimiter,CharSequence prefix,CharSequence suffix) { return new CollectorImpl<>( () -> new StringJoiner(delimiter, prefix, suffix), StringJoiner::add, StringJoiner::merge, StringJoiner::toString, CH_NOID); }
Last updated