Von DB erhaltene Arrays sind oft unsicher. Ich fragte mich, ob es möglich wäre, eine solche Array-Übereinstimmungsprüfung mit so wenig Code wie möglich auszudrücken. Ich möchte es ordentlich machen, also sollte die Situation wie folgt sein
Einfache Typen wie String und Integer können mit "Stream.sorted ()" sortiert werden. Dies ist jedoch nicht der Fall. Es gibt auch kein Problem, wenn Sie Composer definieren.
NullPointerException.
Unnötig zu sagen hier
Sample.java
public boolean isEqualsList(List<?> a, List<?> b){
return Arrays.equals(a.stream().sorted().toArray(), b.stream().sorted().toArray());
}
Selbst wenn Sie einen Komparator definieren, scheint er kaum ordentlich zu sein.
Sample.java
public boolean isEqualsList(Comparator comp, List<?> a, List<?> b){
return Arrays.equals(a.stream().sorted(comp).toArray(), b.stream().sorted(comp).toArray());
}
Ich konnte in einem Satz schreiben. Es ist unangenehm, dass toArray () Object [] ist, aber es ist nur eine Übereinstimmungsprüfung, also gibt es kein Problem.