private final List<Character> chars = new ArrayList<>();
+ public String2 clear(){
+ chars.clear();
+ return this;
+ }
+
public String2(String value) {
- addSuffix(value);
+ append(value);
}
public String2() {
}
public String2 repeat(int count){
- String value = toString();
+ if (count > 0) {
+ String value = toString();
- for (int i = 1; i < count; i++) {
- addSuffix(value);
+ for (int i = 1; i < count; i++)
+ append(value);
+ } else {
+ clear();
}
return this;
}
- public String2 addPrefix(final String prefix) {
+ public String2 prepend(final String prefix) {
if (prefix == null)
return this;
return this;
}
- public String2 addSuffix(final String suffix) {
+ public String2 append(final String suffix) {
if (suffix == null)
return this;
return this;
}
- public String2 addSuffix(String separator, final String suffix) {
+ public String2 appendWithSeparator(String separator, final String suffix) {
if (!isEmpty())
- addSuffix(separator);
+ append(separator);
- addSuffix(suffix);
+ append(suffix);
return this;
}
- public String2 addSuffix(String s, int times) {
- for (int i = 0; i < times; i++) addSuffix(s);
+ public String2 append(String s, int times) {
+ for (int i = 0; i < times; i++) append(s);
return this;
}
@Test
public void testSuffixAndPrefix() {
final String2 s = new String2("experiment");
- s.addPrefix("The ").addSuffix(" !");
+ s.prepend("The ").append(" !");
assertEquals("The experiment !", s.toString());
}