< prev index next >
src/java.base/share/classes/java/lang/String.java
Print this page
rev 49110 : 8198955: String#repeat loop optimization
Reviewed-by: igerasim, redestad
@@ -3003,13 +3003,12 @@
}
final int limit = len * count;
final byte[] multiple = new byte[limit];
System.arraycopy(value, 0, multiple, 0, len);
int copied = len;
- for (int next = copied << 1; next < limit && 0 < next; next = next << 1) {
+ for (; copied < limit - copied; copied <<= 1) {
System.arraycopy(multiple, 0, multiple, copied, copied);
- copied = next;
}
System.arraycopy(multiple, 0, multiple, copied, limit - copied);
return new String(multiple, coder);
}
< prev index next >