ObjectUtils 클래스 소개
행동 양식:
allNotNull(개체...값) | 모든 객체가 null이 아닌지 확인 |
allNull(개체...값) | 모든 객체가 null인지 확인 |
anyNotNull(객체...값) | 하나 이상의 객체가 null이 아닌지 확인 |
anyNull(객체... 값) | 하나 이상의 객체가 null인지 확인 |
클론(T obj) | 개체 복제 |
클론IfPossible(T obj) | 개체를 복제하거나 원본을 반환합니다. |
비교(T c1, T c2) | 개체 비교 |
defaultIfNull(T 개체, T defaultValue) | 객체가 null인 경우 기본 객체를 반환합니다. |
같음(객체 객체1, 객체 객체2) | 두 개체를 비교합니다. |
notEqual(객체 객체1, 객체 객체2) | 두 개체가 같지 않은지 확인 |
firstNonNull(T...값) | null이 아닌 첫 번째 객체를 반환합니다. |
getFirstNonNull(공급자 |
null이 아닌 첫 번째 객체를 반환합니다. |
getIfNull(T 개체, 공급자 |
null이 아니면 주어진 객체를 반환하고, 그렇지 않으면 전달된 Supplier의 Supplier.get() 값을 반환합니다. |
해시코드(obj) | 개체의 hashCode를 계산합니다. |
hashCodeMulti(객체...객체) | 개체 그룹에 대한 hashCode를 계산합니다. |
isEmpty(객체 객체) | 객체가 비어 있는지 또는 null인지 확인 |
isNotEmpty(객체 객체) | 객체가 비어 있거나 null이 아닌지 확인합니다. |
requireNonEmpty(T obj) | 개체가 null이 아닌지 확인하고 그렇지 않으면 예외를 throw합니다. |
requireNonEmpty(T obj, 문자열 메시지) | 개체가 null이 아닌지 확인하고 그렇지 않으면 예외를 throw합니다. |
identityToString(객체 객체) | 객체에 대한 문자열을 반환합니다. |
toString(객체 객체) | 객체에 대한 문자열을 반환합니다. |
toString(개체 객체, 문자열 nullStr) | 객체에 대한 문자열을 반환합니다. |
toString(개체 객체, 공급자 |
객체에 대한 문자열을 반환합니다. |
각 그룹에서 한 가지 방법을 살펴보겠습니다. 매우 편리하고 불필요한 코드를 피할 수 있기 때문에 자주 사용하시기 바랍니다.
ObjectUtils.compare()
이 메서드는 비교기와 같은 방식으로 객체를 비교합니다: 보다 큼, 작거나 같음. 개체를 정렬하는 데 사용할 수 있습니다.
메서드 서명은 다음과 같습니다.
public static <T extends Comparable<? super T>> int compare(final T c1, final T c2);
public static <T extends Comparable<? super T>> int compare(final T c1, final T c2, final boolean nullGreater);
세 번째 매개변수( nullGreater )가 true 이면 null 은 항상 null 이 아닌 값보다 큰 것으로 간주됩니다 . 메서드는 c1> c2이면 양수, c1<c2이면 음수, c1 == c2이면 0을 반환합니다.
예:
String firstValue = "codeGym";
String secondValue = "codeGym";
System.out.print(ObjectUtils.compare(firstValue, secondValue));
System.out.println();
firstValue = "codeGym";
secondValue = null;
System.out.print(ObjectUtils.compare(firstValue, secondValue));
System.out.println();
firstValue = "";
secondValue = "codeGym";
System.out.print(ObjectUtils.compare(firstValue, secondValue));
System.out.println();
프로그램이 결과를 표시합니다.
0
1
-8
ObjectUtils.isNotEmpty()
isNotEmpty() 메소드는 자신에게 전달된 객체가 비어 있지도 않고 null 도 아닌지 확인합니다 .
메소드 서명:
public static boolean isNotEmpty(final Object object)
예:
List<String> values = new ArrayList<>();
System.out.println(ObjectUtils.isNotEmpty(values));
values.add("codeGym");
System.out.println(ObjectUtils.isNotEmpty(values));
values = null;
System.out.println(ObjectUtils.isNotEmpty(values));
결과가 화면에 표시됩니다.
false
true
false
java.util.객체
Java 개발자는 ObjectUtils 의 아이디어를 정말 좋아했기 때문에 JDK 7에서 다음과 같이 추가했습니다.
isNull(Objectobj) | 객체가 null인지 확인 |
nonNull(객체 객체) | 객체가 null이 아닌지 확인 |
toString(객체) | 객체를 문자열로 변환 |
toString(객체, 문자열 nullDefault) | 객체를 문자열로 변환 |
부울 같음(객체 a,객체 b) | 개체 비교 |
부울 deepEquals(객체 a,객체 b) | 개체 비교 |
T requireNonNull(T obj) | 전달된 매개변수가 null이 아닌지 확인 |
T requireNonNull(T obj,String 메시지) | 전달된 매개변수가 null이 아닌지 확인 |
int hashCode(객체 o) | 개체의 hashCode를 계산합니다. |
int 해시(개체...값) | 개체 그룹에 대한 hashCode를 계산합니다. |
정수 비교(T a, T b, 비교기 c) | 개체 비교 |
java.util.Objects 클래스는 JDK의 일부 이므로 코드에서 사용하는 것이 좋습니다.
다른 사람의 코드를 읽을 때 ObjectUtils 의 옵션을 보게 될 가능성이 높으며 이는 종종 오픈 소스에서 발생한다는 점에 유의하는 것이 중요합니다. 여기에서 그들이 어떻게 다른지 볼 수 있습니다 .
GO TO FULL VERSION