发现 Java 21 的 StringBuilder
和 StringBuffer
中多了 repeat 方法:
/** * @throws IllegalArgumentException {@inheritDoc} * * @since 21 */ @Override public StringBuilder repeat(int codePoint, int count) { super.repeat(codePoint, count); return this; } /** * @throws IllegalArgumentException {@inheritDoc} * * @since 21 */ @Override public StringBuilder repeat(CharSequence cs, int count) { super.repeat(cs, count); return this; }
根据名字猜猜是干嘛的?试试下面的代码:
var sb = new StringBuilder().repeat("*", 10); System.out.println(sb);
最后会输出:**********
另一个 repeat
方法第一个参数是 codePoint
,指得应该是 UniCode 字符集中的 codePoint,所以这个方法的 repeat 是针对 UniCode 字符的。