perf[set]: 增加set的equal和hashcode方法

This commit is contained in:
godotg committed 2022-09-24 18:50:26 +08:00
1 parent cf0889b5f3
commit 0efc5438a0
4 files changed
+68

No files matched your search

@@ -16,6 +16,7 @@ import io.netty.util.collection.ByteObjectHashMap;
import java.util.AbstractSet;
import java.util.Iterator;
import java.util.Objects;
/**
* @author godotg
@@ -72,4 +73,20 @@ public class HashByteSet extends AbstractSet<Byte> {
map.clear();
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
var obj = (HashByteSet) o;
return Objects.equals(map, obj.map);
}
@Override
public int hashCode() {
return map.hashCode();
}
}
@@ -16,6 +16,7 @@ import io.netty.util.collection.IntObjectHashMap;
import java.util.AbstractSet;
import java.util.Iterator;
import java.util.Objects;
/**
* @author godotg
@@ -72,4 +73,20 @@ public class HashIntSet extends AbstractSet<Integer> {
map.clear();
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
var obj = (HashIntSet) o;
return Objects.equals(map, obj.map);
}
@Override
public int hashCode() {
return map.hashCode();
}
}
@@ -16,6 +16,7 @@ import io.netty.util.collection.LongObjectHashMap;
import java.util.AbstractSet;
import java.util.Iterator;
import java.util.Objects;
/**
* @author godotg
@@ -72,4 +73,20 @@ public class HashLongSet extends AbstractSet<Long> {
map.clear();
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
var obj = (HashLongSet) o;
return Objects.equals(map, obj.map);
}
@Override
public int hashCode() {
return map.hashCode();
}
}
@@ -16,6 +16,7 @@ import io.netty.util.collection.ShortObjectHashMap;
import java.util.AbstractSet;
import java.util.Iterator;
import java.util.Objects;
/**
* @author godotg
@@ -72,4 +73,20 @@ public class HashShortSet extends AbstractSet<Short> {
map.clear();
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
var obj = (HashShortSet) o;
return Objects.equals(map, obj.map);
}
@Override
public int hashCode() {
return map.hashCode();
}
}