优化CombinationAnnotationElement注解数组性能(pr#1323@Gitee)

This commit is contained in:
Looly
2025-03-24 12:29:28 +08:00
parent 158a0f03ad
commit d254f7670d
2 changed files with 4 additions and 2 deletions

View File

@@ -6,7 +6,6 @@ import cn.hutool.core.util.ArrayUtil;
import java.io.Serializable;
import java.lang.annotation.Annotation;
import java.lang.reflect.AnnotatedElement;
import java.util.Arrays;
import java.util.Collection;
import java.util.Map;
import java.util.function.Predicate;
@@ -103,6 +102,8 @@ public class CombinationAnnotationElement implements AnnotatedElement, Serializa
parseDeclared(declaredAnnotations);
final Annotation[] annotations = element.getAnnotations();
// pr#1323 如果子类重写了父类的注解,虽然两者数组内部元素一样的,但是数组中的顺序可能不一样
// getAnnotations()的包含父类getDeclaredAnnotations()不包含父类。他们两是一个包含关系,只会存在后者的注解元素大于等于前者的情况。
if (declaredAnnotations.length == annotations.length) {
this.annotationMap = this.declaredAnnotationMap;
} else {