mirror of
https://gitee.com/chinabugotech/hutool.git
synced 2025-07-21 15:09:48 +08:00
fix comment
This commit is contained in:
@@ -19,6 +19,7 @@ package cn.hutool.v7.core.bean.copier;
|
|||||||
import cn.hutool.v7.core.lang.Assert;
|
import cn.hutool.v7.core.lang.Assert;
|
||||||
import cn.hutool.v7.core.lang.copier.Copier;
|
import cn.hutool.v7.core.lang.copier.Copier;
|
||||||
|
|
||||||
|
import java.io.Serial;
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.lang.reflect.Type;
|
import java.lang.reflect.Type;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@@ -38,8 +39,12 @@ import java.util.Map;
|
|||||||
* @since 3.2.3
|
* @since 3.2.3
|
||||||
*/
|
*/
|
||||||
public class BeanCopier<T> implements Copier<T>, Serializable {
|
public class BeanCopier<T> implements Copier<T>, Serializable {
|
||||||
|
@Serial
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 拷贝器
|
||||||
|
*/
|
||||||
private final Copier<T> copier;
|
private final Copier<T> copier;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
package cn.hutool.v7.core.cache.impl;
|
package cn.hutool.v7.core.cache.impl;
|
||||||
|
|
||||||
|
import java.io.Serial;
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
import java.util.NoSuchElementException;
|
import java.util.NoSuchElementException;
|
||||||
@@ -30,9 +31,16 @@ import java.util.NoSuchElementException;
|
|||||||
* @since 4.0.10
|
* @since 4.0.10
|
||||||
*/
|
*/
|
||||||
public class CacheObjIterator<K, V> implements Iterator<CacheObj<K, V>>, Serializable {
|
public class CacheObjIterator<K, V> implements Iterator<CacheObj<K, V>>, Serializable {
|
||||||
|
@Serial
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 迭代器
|
||||||
|
*/
|
||||||
private final Iterator<CacheObj<K, V>> iterator;
|
private final Iterator<CacheObj<K, V>> iterator;
|
||||||
|
/**
|
||||||
|
* 下一个值
|
||||||
|
*/
|
||||||
private CacheObj<K, V> nextValue;
|
private CacheObj<K, V> nextValue;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -21,6 +21,7 @@ import cn.hutool.v7.core.codec.Encoder;
|
|||||||
import cn.hutool.v7.core.exception.HutoolException;
|
import cn.hutool.v7.core.exception.HutoolException;
|
||||||
import cn.hutool.v7.core.text.StrUtil;
|
import cn.hutool.v7.core.text.StrUtil;
|
||||||
|
|
||||||
|
import java.io.Serial;
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -32,6 +33,7 @@ import java.io.Serializable;
|
|||||||
* @since 5.7.23
|
* @since 5.7.23
|
||||||
*/
|
*/
|
||||||
public class Base16Codec implements Encoder<byte[], char[]>, Decoder<CharSequence, byte[]>, Serializable {
|
public class Base16Codec implements Encoder<byte[], char[]>, Decoder<CharSequence, byte[]>, Serializable {
|
||||||
|
@Serial
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -27,6 +27,9 @@ import cn.hutool.v7.core.lang.Assert;
|
|||||||
*/
|
*/
|
||||||
public abstract class ConverterWithRoot implements Converter {
|
public abstract class ConverterWithRoot implements Converter {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根转换器
|
||||||
|
*/
|
||||||
protected final Converter rootConverter;
|
protected final Converter rootConverter;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -77,6 +77,11 @@ public class IdUtil {
|
|||||||
return UUID.fastUUID().toString(true);
|
return UUID.fastUUID().toString(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取随机UUID7
|
||||||
|
*
|
||||||
|
* @return 随机UUID7
|
||||||
|
*/
|
||||||
public static String randomUUID7() {
|
public static String randomUUID7() {
|
||||||
return UUID.randomUUID7().toString();
|
return UUID.randomUUID7().toString();
|
||||||
}
|
}
|
||||||
@@ -263,7 +268,7 @@ public class IdUtil {
|
|||||||
}
|
}
|
||||||
if (null != mac) {
|
if (null != mac) {
|
||||||
id = ((0x000000FF & (long) mac[mac.length - 2])
|
id = ((0x000000FF & (long) mac[mac.length - 2])
|
||||||
| (0x0000FF00 & (((long) mac[mac.length - 1]) << 8))) >> 6;
|
| (0x0000FF00 & (((long) mac[mac.length - 1]) << 8))) >> 6;
|
||||||
id = id % (maxDatacenterId + 1);
|
id = id % (maxDatacenterId + 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -30,6 +30,9 @@ import java.io.InputStream;
|
|||||||
*/
|
*/
|
||||||
public class LimitedInputStream extends FilterInputStream {
|
public class LimitedInputStream extends FilterInputStream {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 限制最大读取量,单位byte
|
||||||
|
*/
|
||||||
protected long limit;
|
protected long limit;
|
||||||
private final boolean throwWhenReachLimit;
|
private final boolean throwWhenReachLimit;
|
||||||
|
|
||||||
|
@@ -18,6 +18,7 @@ package cn.hutool.v7.core.map.multi;
|
|||||||
|
|
||||||
import cn.hutool.v7.core.exception.HutoolException;
|
import cn.hutool.v7.core.exception.HutoolException;
|
||||||
|
|
||||||
|
import java.io.Serial;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -224,11 +225,17 @@ public class DirectedWeightGraph<T> {
|
|||||||
* @param <T> 点类型
|
* @param <T> 点类型
|
||||||
*/
|
*/
|
||||||
public static class Edge<T> {
|
public static class Edge<T> {
|
||||||
// 起始点
|
/**
|
||||||
|
* 起始点
|
||||||
|
*/
|
||||||
protected T fromPoint;
|
protected T fromPoint;
|
||||||
// 目标点
|
/**
|
||||||
|
* 目标点
|
||||||
|
*/
|
||||||
protected T toPoint;
|
protected T toPoint;
|
||||||
// 权重
|
/**
|
||||||
|
* 权重
|
||||||
|
*/
|
||||||
protected long weight;
|
protected long weight;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -337,6 +344,7 @@ public class DirectedWeightGraph<T> {
|
|||||||
* 负环异常
|
* 负环异常
|
||||||
*/
|
*/
|
||||||
public static class NegativeRingException extends HutoolException {
|
public static class NegativeRingException extends HutoolException {
|
||||||
|
@Serial
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -30,6 +30,14 @@ import java.util.function.Predicate;
|
|||||||
*/
|
*/
|
||||||
public class TakeWhileSpliterator<T> implements Spliterator<T> {
|
public class TakeWhileSpliterator<T> implements Spliterator<T> {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建TakeWhileSpliterator
|
||||||
|
*
|
||||||
|
* @param source 源Spliterator
|
||||||
|
* @param predicate 断言
|
||||||
|
* @param <T> 元素类型
|
||||||
|
* @return TakeWhileSpliterator
|
||||||
|
*/
|
||||||
public static <T> TakeWhileSpliterator<T> create(final Spliterator<T> source, final Predicate<? super T> predicate) {
|
public static <T> TakeWhileSpliterator<T> create(final Spliterator<T> source, final Predicate<? super T> predicate) {
|
||||||
return new TakeWhileSpliterator<>(source, predicate);
|
return new TakeWhileSpliterator<>(source, predicate);
|
||||||
}
|
}
|
||||||
|
@@ -37,11 +37,17 @@ public class MultiStrFinder {
|
|||||||
return new MultiStrFinder(source);
|
return new MultiStrFinder(source);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 字符索引
|
/**
|
||||||
|
* 字符索引
|
||||||
|
*/
|
||||||
protected final Map<Character, Integer> charIndexMap = new HashMap<>();
|
protected final Map<Character, Integer> charIndexMap = new HashMap<>();
|
||||||
// 全部字符数量
|
/**
|
||||||
|
* 全部字符数量
|
||||||
|
*/
|
||||||
protected final int allCharSize;
|
protected final int allCharSize;
|
||||||
// 根节点
|
/**
|
||||||
|
* 根节点
|
||||||
|
*/
|
||||||
protected final Node root;
|
protected final Node root;
|
||||||
// 全部节点数量
|
// 全部节点数量
|
||||||
int nodeSize;
|
int nodeSize;
|
||||||
|
@@ -40,6 +40,11 @@ public class IndexedPlaceholderSegment extends NamedPlaceholderSegment {
|
|||||||
this.index = Integer.parseInt(idxStr);
|
this.index = Integer.parseInt(idxStr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取下标
|
||||||
|
*
|
||||||
|
* @return 下标
|
||||||
|
*/
|
||||||
public int getIndex() {
|
public int getIndex() {
|
||||||
return index;
|
return index;
|
||||||
}
|
}
|
||||||
|
@@ -60,6 +60,17 @@ public class NamedPlaceholderStrTemplate extends StrTemplate {
|
|||||||
*/
|
*/
|
||||||
protected int indexedSegmentMaxIdx = 0;
|
protected int indexedSegmentMaxIdx = 0;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建一个有前缀和后缀的模板
|
||||||
|
*
|
||||||
|
* @param template 模板字符串
|
||||||
|
* @param prefix 占位符前缀,默认为: {@link #DEFAULT_PREFIX}
|
||||||
|
* @param suffix 占位符后缀,默认为: {@link #DEFAULT_SUFFIX}
|
||||||
|
* @param escape 转义符
|
||||||
|
* @param defaultValue 默认值
|
||||||
|
* @param defaultValueHandler 默认值处理器
|
||||||
|
* @param features 模板特性
|
||||||
|
*/
|
||||||
protected NamedPlaceholderStrTemplate(final String template, final int features, final String prefix,
|
protected NamedPlaceholderStrTemplate(final String template, final int features, final String prefix,
|
||||||
final String suffix, final char escape, final String defaultValue,
|
final String suffix, final char escape, final String defaultValue,
|
||||||
final UnaryOperator<String> defaultValueHandler) {
|
final UnaryOperator<String> defaultValueHandler) {
|
||||||
@@ -576,6 +587,7 @@ public class NamedPlaceholderStrTemplate extends StrTemplate {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 构造
|
* 构造
|
||||||
|
*
|
||||||
* @param template 模板
|
* @param template 模板
|
||||||
*/
|
*/
|
||||||
protected Builder(final String template) {
|
protected Builder(final String template) {
|
||||||
|
@@ -48,6 +48,16 @@ public class SinglePlaceholderStrTemplate extends StrTemplate {
|
|||||||
*/
|
*/
|
||||||
protected String placeholder;
|
protected String placeholder;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 构造
|
||||||
|
*
|
||||||
|
* @param template 模板
|
||||||
|
* @param features 策略值
|
||||||
|
* @param placeholder 占位符
|
||||||
|
* @param escape 转义符
|
||||||
|
* @param defaultValue 默认值
|
||||||
|
* @param defaultValueHandler 默认值处理器
|
||||||
|
*/
|
||||||
protected SinglePlaceholderStrTemplate(final String template, final int features, final String placeholder, final char escape,
|
protected SinglePlaceholderStrTemplate(final String template, final int features, final String placeholder, final char escape,
|
||||||
final String defaultValue, final UnaryOperator<String> defaultValueHandler) {
|
final String defaultValue, final UnaryOperator<String> defaultValueHandler) {
|
||||||
super(template, escape, defaultValue, defaultValueHandler, features);
|
super(template, escape, defaultValue, defaultValueHandler, features);
|
||||||
|
@@ -30,10 +30,17 @@ import java.util.concurrent.Semaphore;
|
|||||||
*/
|
*/
|
||||||
public abstract class SemaphoreRateLimiter implements RateLimiter {
|
public abstract class SemaphoreRateLimiter implements RateLimiter {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 限流配置
|
||||||
|
*/
|
||||||
protected final RateLimiterConfig config;
|
protected final RateLimiterConfig config;
|
||||||
|
/**
|
||||||
|
* 限流许可
|
||||||
|
*/
|
||||||
protected final Semaphore semaphore;
|
protected final Semaphore semaphore;
|
||||||
|
|
||||||
// region ----- Constructor
|
// region ----- Constructor
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 构造
|
* 构造
|
||||||
*
|
*
|
||||||
|
@@ -42,6 +42,9 @@ import java.util.concurrent.TimeUnit;
|
|||||||
*/
|
*/
|
||||||
public class TokenBucketRateLimiter extends SemaphoreRateLimiter implements Closeable {
|
public class TokenBucketRateLimiter extends SemaphoreRateLimiter implements Closeable {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 定时器
|
||||||
|
*/
|
||||||
protected final ScheduledExecutorService scheduler;
|
protected final ScheduledExecutorService scheduler;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Reference in New Issue
Block a user