feat : supplement StringUtil

pull/779/head
pizihao 3 years ago
parent 4666c90bc2
commit f4c8f535f7

@ -223,6 +223,56 @@ public class StringUtil {
return sb.toString(); return sb.toString();
} }
/**
* combination CharSequence, get a String
*
* @param charSequences CharSequence, if null or empty, get {@link StringUtil#EMPTY}
* @return String
*/
public static String newBuilder(CharSequence... charSequences) {
if (charSequences == null || charSequences.length == 0) {
return StringUtil.EMPTY;
}
return createBuilder(charSequences).toString();
}
/**
* combination CharSequence, get a StringBuilder
*
* @param charSequences CharSequence
* @return StringBuilder
*/
public static StringBuilder createBuilder(CharSequence... charSequences) {
StringBuilder builder = new StringBuilder();
if (charSequences == null || charSequences.length == 0) {
return builder;
}
for (CharSequence sequence : charSequences) {
builder.append(sequence);
}
return builder;
}
/**
* combination CharSequence, to StringBuilder
*
* @param builder StringBuilder, if null create a new
* @param charSequences CharSequence
* @return StringBuilder
*/
public static StringBuilder appends(StringBuilder builder, CharSequence... charSequences) {
if (builder == null) {
return createBuilder(charSequences);
}
if (charSequences == null || charSequences.length == 0) {
return builder;
}
for (CharSequence sequence : charSequences) {
builder.append(sequence);
}
return builder;
}
/** /**
* Replace a portion of the string, replacing all found * Replace a portion of the string, replacing all found
* *

@ -18,83 +18,108 @@
package cn.hippo4j.common.toolkit; package cn.hippo4j.common.toolkit;
import org.junit.Test; import org.junit.Test;
import org.junit.Assert;
import java.util.Objects;
public class StringUtilTest { public class StringUtilTest {
@Test @Test
public void assertIsEmpty() { public void assertIsEmpty() {
String string = ""; String string = "";
Assert.isTrue(StringUtil.isEmpty(string)); Assert.assertTrue(StringUtil.isEmpty(string));
} }
@Test @Test
public void assertIsNotEmpty() { public void assertIsNotEmpty() {
String string = "string"; String string = "string";
Assert.isTrue(StringUtil.isNotEmpty(string)); Assert.assertTrue(StringUtil.isNotEmpty(string));
} }
@Test @Test
public void emptyToNull() { public void emptyToNull() {
String string = ""; String string = "";
Assert.isNull(StringUtil.emptyToNull(string)); Assert.assertNull(StringUtil.emptyToNull(string));
} }
@Test @Test
public void nullToEmpty() { public void nullToEmpty() {
String string = "null"; String string = "null";
Assert.notEmpty(StringUtil.nullToEmpty(string)); Assert.assertEquals("null", StringUtil.nullToEmpty(string));
} }
@Test @Test
public void isNullOrEmpty() { public void isNullOrEmpty() {
String string = "null"; String string = "null";
Assert.isTrue(!StringUtil.isNullOrEmpty(string)); Assert.assertFalse(StringUtil.isNullOrEmpty(string));
} }
@Test @Test
public void isBlank() { public void isBlank() {
String string = ""; String string = "";
Assert.isTrue(StringUtil.isBlank(string)); Assert.assertTrue(StringUtil.isBlank(string));
} }
@Test @Test
public void isNotBlank() { public void isNotBlank() {
String string = "null"; String string = "null";
Assert.isTrue(StringUtil.isNotBlank(string)); Assert.assertTrue(StringUtil.isNotBlank(string));
} }
@Test @Test
public void isAllNotEmpty() { public void isAllNotEmpty() {
String strings = "str"; String strings = "str";
Assert.isTrue(StringUtil.isAllNotEmpty(strings)); Assert.assertTrue(StringUtil.isAllNotEmpty(strings));
} }
@Test @Test
public void hasEmpty() { public void hasEmpty() {
String strings = ""; String strings = "";
Assert.isTrue(StringUtil.hasEmpty(strings)); Assert.assertTrue(StringUtil.hasEmpty(strings));
} }
@Test @Test
public void toUnderlineCase() { public void toUnderlineCase() {
String string = "str"; String string = "str";
String s = StringUtil.toUnderlineCase(string); String s = StringUtil.toUnderlineCase(string);
Assert.isTrue(Objects.equals(s, "str")); Assert.assertEquals("str", s);
} }
@Test @Test
public void toSymbolCase() { public void toSymbolCase() {
String string = "str"; String string = "str";
String s = StringUtil.toSymbolCase(string, StringUtil.UNDERLINE); String s = StringUtil.toSymbolCase(string, StringUtil.UNDERLINE);
Assert.isTrue(Objects.equals(s, "str")); Assert.assertEquals("str", s);
} }
@Test @Test
public void toCamelCase() { public void toCamelCase() {
String string = "str_str"; String string = "str_str";
String s = StringUtil.toCamelCase(string, StringUtil.UNDERLINE); String s = StringUtil.toCamelCase(string, StringUtil.UNDERLINE);
Assert.isTrue(Objects.equals(s, "strStr")); Assert.assertEquals("strStr", s);
}
@Test
public void newBuilder() {
String s1 = StringUtil.newBuilder(null);
Assert.assertEquals("", s1);
String s2 = StringUtil.newBuilder("H", "ippo", "4j");
Assert.assertEquals("Hippo4j", s2);
}
@Test
public void createBuilder() {
StringBuilder s1 = StringUtil.createBuilder(null);
Assert.assertEquals("", s1.toString());
StringBuilder s2 = StringUtil.createBuilder("H", "ippo", "4j");
Assert.assertEquals("Hippo4j", s2.toString());
}
@Test
public void appends() {
StringBuilder sb1 = StringUtil.appends(null, "H", "ippo", "4j");
Assert.assertEquals("Hippo4j", sb1.toString());
StringBuilder sb2 = StringUtil.appends(StringUtil.createBuilder("To "), null);
Assert.assertEquals("To ", sb2.toString());
StringBuilder sb3 = StringUtil.appends(StringUtil.createBuilder("To "), "H", "ippo", "4j");
Assert.assertEquals("To Hippo4j", sb3.toString());
} }
} }

Loading…
Cancel
Save