remove methods

This commit is contained in:
Looly 2022-05-01 23:30:26 +08:00
parent 6c8fb79b38
commit 50e6afc59a
13 changed files with 18 additions and 185 deletions

View File

@ -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);
}

View File

@ -392,7 +392,6 @@ public class ReflectUtil {
/**
* 获得指定类过滤后的Public方法列表<br>
* TODO 6.x此方法更改返回Method[]
*
* @param clazz 查找方法的类
* @param filter 过滤器

View File

@ -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
/**

View File

@ -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

View File

@ -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) == '#') {

View File

@ -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()) {

View File

@ -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);

View File

@ -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) {

View File

@ -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());
}
}

View File

@ -1,8 +1,7 @@
package cn.hutool.cron.task;
import cn.hutool.core.exceptions.UtilException;
import cn.hutool.core.classloader.ClassLoaderUtil;
import cn.hutool.core.reflect.ClassUtil;
import cn.hutool.core.exceptions.UtilException;
import cn.hutool.core.reflect.ReflectUtil;
import cn.hutool.core.text.StrUtil;
import cn.hutool.cron.CronException;
@ -51,7 +50,7 @@ public class InvokeTask implements Task{
if(StrUtil.isBlank(methodName)) {
throw new IllegalArgumentException("Method name is blank !");
}
this.method = ClassUtil.getPublicMethod(clazz, methodName);
this.method = ReflectUtil.getPublicMethod(clazz, methodName);
if(null == this.method) {
throw new IllegalArgumentException("No method with name of [" + methodName + "] !");
}

View File

@ -1,8 +1,8 @@
package cn.hutool.extra.aop;
import cn.hutool.core.classloader.ClassLoaderUtil;
import cn.hutool.extra.aop.aspects.Aspect;
import cn.hutool.extra.aop.proxy.ProxyFactory;
import cn.hutool.core.reflect.ClassUtil;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Proxy;
@ -69,6 +69,6 @@ public final class ProxyUtil {
* @return 代理类
*/
public static <T> T newProxyInstance(final InvocationHandler invocationHandler, final Class<?>... interfaces) {
return newProxyInstance(ClassUtil.getClassLoader(), invocationHandler, interfaces);
return newProxyInstance(ClassLoaderUtil.getClassLoader(), invocationHandler, interfaces);
}
}

View File

@ -1,8 +1,8 @@
package cn.hutool.extra.template.engine.freemarker;
import cn.hutool.core.classloader.ClassLoaderUtil;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.io.IORuntimeException;
import cn.hutool.core.reflect.ClassUtil;
import cn.hutool.extra.template.Template;
import cn.hutool.extra.template.TemplateConfig;
import cn.hutool.extra.template.TemplateEngine;
@ -99,7 +99,7 @@ public class FreemarkerEngine implements TemplateEngine {
switch (config.getResourceMode()) {
case CLASSPATH:
cfg.setTemplateLoader(new ClassTemplateLoader(ClassUtil.getClassLoader(), config.getPath()));
cfg.setTemplateLoader(new ClassTemplateLoader(ClassLoaderUtil.getClassLoader(), config.getPath()));
break;
case FILE:
try {

View File

@ -667,7 +667,7 @@ public class HttpUtil {
}
// 始终有参数
final StrBuilder urlBuilder = StrBuilder.create(url.length() + queryString.length() + 16);
final StringBuilder urlBuilder = new StringBuilder(url.length() + queryString.length() + 16);
final int qmIndex = url.indexOf('?');
if (qmIndex > 0) {
// 原URL带参数则对这部分参数单独编码如果选项为进行编码