mirror of
https://gitee.com/chinabugotech/hutool.git
synced 2025-07-21 15:09:48 +08:00
remove methods
This commit is contained in:
@@ -12,13 +12,15 @@ import java.io.Writer;
|
||||
*/
|
||||
public final class FastStringWriter extends Writer {
|
||||
|
||||
private final StrBuilder builder;
|
||||
private static final int DEFAULT_CAPACITY = 16;
|
||||
|
||||
private final StringBuilder builder;
|
||||
|
||||
/**
|
||||
* 构造
|
||||
*/
|
||||
public FastStringWriter() {
|
||||
this(StrBuilder.DEFAULT_CAPACITY);
|
||||
this(DEFAULT_CAPACITY);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -28,9 +30,9 @@ public final class FastStringWriter extends Writer {
|
||||
*/
|
||||
public FastStringWriter(int initialSize) {
|
||||
if (initialSize < 0) {
|
||||
initialSize = StrBuilder.DEFAULT_CAPACITY;
|
||||
initialSize = DEFAULT_CAPACITY;
|
||||
}
|
||||
this.builder = new StrBuilder(initialSize);
|
||||
this.builder = new StringBuilder(initialSize);
|
||||
}
|
||||
|
||||
|
||||
|
@@ -392,7 +392,6 @@ public class ReflectUtil {
|
||||
|
||||
/**
|
||||
* 获得指定类过滤后的Public方法列表<br>
|
||||
* TODO 6.x此方法更改返回Method[]
|
||||
*
|
||||
* @param clazz 查找方法的类
|
||||
* @param filter 过滤器
|
||||
|
@@ -4191,16 +4191,6 @@ public class CharSequenceUtil {
|
||||
return sb;
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建StrBuilder对象
|
||||
*
|
||||
* @param strs 初始字符串列表
|
||||
* @return StrBuilder对象
|
||||
*/
|
||||
public static StrBuilder strBuilder(final CharSequence... strs) {
|
||||
return StrBuilder.create(strs);
|
||||
}
|
||||
|
||||
// ------------------------------------------------------------------------ getter and setter
|
||||
|
||||
/**
|
||||
|
@@ -1,6 +1,5 @@
|
||||
package cn.hutool.core.text;
|
||||
|
||||
import cn.hutool.core.lang.id.IdUtil;
|
||||
import cn.hutool.core.util.ArrayUtil;
|
||||
import cn.hutool.core.util.CharsetUtil;
|
||||
|
||||
@@ -272,16 +271,6 @@ public class StrUtil extends CharSequenceUtil implements StrPool {
|
||||
return new StringBuilder();
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建StrBuilder对象
|
||||
*
|
||||
* @return StrBuilder对象
|
||||
* @since 4.0.1
|
||||
*/
|
||||
public static StrBuilder strBuilder() {
|
||||
return StrBuilder.create();
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建StringBuilder对象
|
||||
*
|
||||
@@ -292,17 +281,6 @@ public class StrUtil extends CharSequenceUtil implements StrPool {
|
||||
return new StringBuilder(capacity);
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建StrBuilder对象
|
||||
*
|
||||
* @param capacity 初始大小
|
||||
* @return StrBuilder对象
|
||||
* @since 4.0.1
|
||||
*/
|
||||
public static StrBuilder strBuilder(final int capacity) {
|
||||
return StrBuilder.create(capacity);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获得StringReader
|
||||
*
|
||||
@@ -412,17 +390,6 @@ public class StrUtil extends CharSequenceUtil implements StrPool {
|
||||
return TextSimilarity.similar(str1, str2, scale);
|
||||
}
|
||||
|
||||
/**
|
||||
* 生成随机UUID
|
||||
*
|
||||
* @return UUID字符串
|
||||
* @see IdUtil#randomUUID()
|
||||
* @since 4.0.10
|
||||
*/
|
||||
public static String uuid() {
|
||||
return IdUtil.randomUUID();
|
||||
}
|
||||
|
||||
/**
|
||||
* 格式化文本,使用 {varName} 占位<br>
|
||||
* map = {a: "aValue", b: "bValue"} format("{a} and {b}", map) ---=》 aValue and bValue
|
||||
|
@@ -1,6 +1,5 @@
|
||||
package cn.hutool.core.text.escape;
|
||||
|
||||
import cn.hutool.core.text.StrBuilder;
|
||||
import cn.hutool.core.text.replacer.StrReplacer;
|
||||
import cn.hutool.core.util.CharUtil;
|
||||
|
||||
@@ -14,7 +13,7 @@ public class NumericEntityUnescaper extends StrReplacer {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Override
|
||||
protected int replace(final CharSequence str, final int pos, final StrBuilder out) {
|
||||
protected int replace(final CharSequence str, final int pos, final StringBuilder out) {
|
||||
final int len = str.length();
|
||||
// 检查以确保以&#开头
|
||||
if (str.charAt(pos) == '&' && pos < len - 2 && str.charAt(pos + 1) == '#') {
|
||||
|
@@ -1,7 +1,5 @@
|
||||
package cn.hutool.core.text.replacer;
|
||||
|
||||
import cn.hutool.core.text.StrBuilder;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.Map;
|
||||
@@ -51,7 +49,7 @@ public class LookupReplacer extends StrReplacer {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected int replace(final CharSequence str, final int pos, final StrBuilder out) {
|
||||
protected int replace(final CharSequence str, final int pos, final StringBuilder out) {
|
||||
if (prefixSet.contains(str.charAt(pos))) {
|
||||
int max = this.maxLength;
|
||||
if (pos + this.maxLength > str.length()) {
|
||||
|
@@ -1,7 +1,6 @@
|
||||
package cn.hutool.core.text.replacer;
|
||||
|
||||
import cn.hutool.core.lang.Chain;
|
||||
import cn.hutool.core.text.StrBuilder;
|
||||
|
||||
import java.util.Iterator;
|
||||
import java.util.LinkedList;
|
||||
@@ -42,7 +41,7 @@ public class ReplacerChain extends StrReplacer implements Chain<StrReplacer, Rep
|
||||
}
|
||||
|
||||
@Override
|
||||
protected int replace(final CharSequence str, final int pos, final StrBuilder out) {
|
||||
protected int replace(final CharSequence str, final int pos, final StringBuilder out) {
|
||||
int consumed = 0;
|
||||
for (final StrReplacer strReplacer : replacers) {
|
||||
consumed = strReplacer.replace(str, pos, out);
|
||||
|
@@ -1,7 +1,6 @@
|
||||
package cn.hutool.core.text.replacer;
|
||||
|
||||
import cn.hutool.core.lang.func.Replacer;
|
||||
import cn.hutool.core.text.StrBuilder;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
@@ -23,12 +22,12 @@ public abstract class StrReplacer implements Replacer<CharSequence>, Serializabl
|
||||
* @param out 输出
|
||||
* @return 处理的原字符串长度,0表示跳过此字符
|
||||
*/
|
||||
protected abstract int replace(CharSequence str, int pos, StrBuilder out);
|
||||
protected abstract int replace(CharSequence str, int pos, StringBuilder out);
|
||||
|
||||
@Override
|
||||
public CharSequence replace(final CharSequence t) {
|
||||
final int len = t.length();
|
||||
final StrBuilder builder = StrBuilder.create(len);
|
||||
final StringBuilder builder = new StringBuilder(len);
|
||||
int pos = 0;//当前位置
|
||||
int consumed;//处理过的字符数
|
||||
while (pos < len) {
|
||||
|
@@ -1,119 +0,0 @@
|
||||
package cn.hutool.core.text;
|
||||
|
||||
import org.junit.Assert;
|
||||
import org.junit.Ignore;
|
||||
import org.junit.Test;
|
||||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.date.TimeInterval;
|
||||
import cn.hutool.core.lang.Console;
|
||||
|
||||
/**
|
||||
* StrBuilder单元测试
|
||||
* @author looly
|
||||
*
|
||||
*/
|
||||
public class StrBuilderTest {
|
||||
|
||||
/**
|
||||
* StrBuilder的性能测试
|
||||
*/
|
||||
@Test
|
||||
@Ignore
|
||||
public void benchTest() {
|
||||
final TimeInterval timer = DateUtil.timer();
|
||||
final StrBuilder builder = StrBuilder.create();
|
||||
for(int i =0; i< 1000000; i++) {
|
||||
builder.append("test");
|
||||
builder.reset();
|
||||
}
|
||||
Console.log(timer.interval());
|
||||
|
||||
timer.restart();
|
||||
StringBuilder b2 = new StringBuilder();
|
||||
for(int i =0; i< 1000000; i++) {
|
||||
b2.append("test");
|
||||
b2 = new StringBuilder();
|
||||
}
|
||||
Console.log(timer.interval());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void appendTest() {
|
||||
final StrBuilder builder = StrBuilder.create();
|
||||
builder.append("aaa").append("你好").append('r');
|
||||
Assert.assertEquals("aaa你好r", builder.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void insertTest() {
|
||||
final StrBuilder builder = StrBuilder.create(1);
|
||||
builder.append("aaa").append("你好").append('r');
|
||||
builder.insert(3, "数据插入");
|
||||
Assert.assertEquals("aaa数据插入你好r", builder.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void insertTest2() {
|
||||
final StrBuilder builder = StrBuilder.create(1);
|
||||
builder.append("aaa").append("你好").append('r');
|
||||
builder.insert(8, "数据插入");
|
||||
Assert.assertEquals("aaa你好r 数据插入", builder.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void resetTest() {
|
||||
final StrBuilder builder = StrBuilder.create(1);
|
||||
builder.append("aaa").append("你好").append('r');
|
||||
builder.insert(3, "数据插入");
|
||||
builder.reset();
|
||||
Assert.assertEquals("", builder.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void resetTest2() {
|
||||
final StrBuilder builder = StrBuilder.create(1);
|
||||
builder.append("aaa").append("你好").append('r');
|
||||
builder.insert(3, "数据插入");
|
||||
builder.reset();
|
||||
builder.append("bbb".toCharArray());
|
||||
Assert.assertEquals("bbb", builder.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void appendObjectTest() {
|
||||
final StrBuilder builder = StrBuilder.create(1);
|
||||
builder.append(123).append(456.123D).append(true).append('\n');
|
||||
Assert.assertEquals("123456.123true\n", builder.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void delTest() {
|
||||
// 删除全部测试
|
||||
final StrBuilder strBuilder = new StrBuilder("ABCDEFG");
|
||||
final int length = strBuilder.length();
|
||||
final StrBuilder builder = strBuilder.del(0, length);
|
||||
Assert.assertEquals("", builder.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void delTest2() {
|
||||
// 删除中间部分测试
|
||||
final StrBuilder strBuilder = new StrBuilder("ABCDEFG");
|
||||
final StrBuilder builder = strBuilder.del(2,6);
|
||||
Assert.assertEquals("ABG", builder.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void delToTest() {
|
||||
final StrBuilder strBuilder = new StrBuilder("ABCDEFG");
|
||||
|
||||
// 不处理
|
||||
StrBuilder builder = strBuilder.delTo(7);
|
||||
Assert.assertEquals("ABCDEFG", builder.toString());
|
||||
|
||||
// 删除全部
|
||||
builder = strBuilder.delTo(0);
|
||||
Assert.assertEquals("", builder.toString());
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user