remove method

This commit is contained in:
Looly 2025-01-28 00:55:05 +08:00
parent f66e91dab1
commit ab0ab4b1d9
2 changed files with 7 additions and 40 deletions

View File

@ -25,7 +25,6 @@ import java.io.StringReader;
import java.io.StringWriter; import java.io.StringWriter;
import java.nio.ByteBuffer; import java.nio.ByteBuffer;
import java.nio.charset.Charset; import java.nio.charset.Charset;
import java.util.Optional;
/** /**
* 字符串工具类<br> * 字符串工具类<br>
@ -372,41 +371,4 @@ public class StrUtil extends CharSequenceUtil implements StrPool {
public static String similar(final String str1, final String str2, final int scale) { public static String similar(final String str1, final String str2, final int scale) {
return TextSimilarity.similar(str1, str2, scale); return TextSimilarity.similar(str1, str2, scale);
} }
/**
* 字符串填充
* @param str 被填充的字符串(原始字符串)
* @param left 往原始字符串的左边填充
* @param right 往原始字符串的右边填充
* @param middle 往原始字符串的中间填充
* @param middlePos 填充的索引位置
* @return flexibleConcat
*/
public static String flexibleConcat(String str, String left, String right, String middle, int middlePos) {
// 使用 StringBuilder 来提高拼接性能
StringBuilder sb = new StringBuilder();
// 如果原始字符串不为 null添加到 StringBuilder
if (str != null) {
sb.append(str);
}
// 左边拼接字符串如果有
Optional.ofNullable(left)
.filter(s -> !s.isEmpty())
.ifPresent(l -> sb.insert(0, l.toCharArray()));
// 右边拼接字符串如果有
Optional.ofNullable(right)
.filter(s -> !s.isEmpty())
.ifPresent(sb::append);
// 中间拼接字符串如果有且位置有效
Optional.ofNullable(middle)
.filter(s -> !s.isEmpty())
.filter(s -> middlePos >= 0 && middlePos <= sb.length())
.ifPresent(m -> sb.insert(middlePos, m.toCharArray()));
return sb.toString();
}
} }

View File

@ -229,14 +229,14 @@ public class CharSequenceUtilTest {
public void replaceLastTest() { public void replaceLastTest() {
final String str = "i am jack and jack"; final String str = "i am jack and jack";
final String result = StrUtil.replaceLast(str, "JACK", null, true); final String result = StrUtil.replaceLast(str, "JACK", null, true);
assertEquals(result, "i am jack and "); assertEquals("i am jack and ", result);
} }
@Test @Test
public void replaceFirstTest() { public void replaceFirstTest() {
final String str = "yes and yes i do"; final String str = "yes and yes i do";
final String result = StrUtil.replaceFirst(str, "YES", "", true); final String result = StrUtil.replaceFirst(str, "YES", "", true);
assertEquals(result, " and yes i do"); assertEquals(" and yes i do", result);
} }
@Test @Test
@ -539,4 +539,9 @@ public class CharSequenceUtilTest {
assertEquals("a", CharSequenceUtil.stripAll("aba", "ab", "ba")); assertEquals("a", CharSequenceUtil.stripAll("aba", "ab", "ba"));
assertEquals("a", CharSequenceUtil.stripAll("abababa", "ab", "ba")); assertEquals("a", CharSequenceUtil.stripAll("abababa", "ab", "ba"));
} }
@Test
void concatTest() {
assertEquals("abc", CharSequenceUtil.concat(true, "a", "b", "c"));
}
} }