aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorTec <daniel112092@gmail.com>2019-03-11 20:41:55 +0100
committerTec <daniel112092@gmail.com>2019-03-11 20:43:40 +0100
commitc47419f1b60a7772e7f4cba92bc66b33cd32640e (patch)
tree071a132acc2728c9b11a2ae23661ef31c39eacad /src/main/java
parent4b8cecac8f767ecfd9c587f099c40a077d27aeca (diff)
downloadGT5-Unofficial-c47419f1b60a7772e7f4cba92bc66b33cd32640e.tar.gz
GT5-Unofficial-c47419f1b60a7772e7f4cba92bc66b33cd32640e.tar.bz2
GT5-Unofficial-c47419f1b60a7772e7f4cba92bc66b33cd32640e.zip
fix bit render to string
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/com/github/technus/tectech/Util.java21
1 files changed, 16 insertions, 5 deletions
diff --git a/src/main/java/com/github/technus/tectech/Util.java b/src/main/java/com/github/technus/tectech/Util.java
index 09aeae6a6b..e8472bfea6 100644
--- a/src/main/java/com/github/technus/tectech/Util.java
+++ b/src/main/java/com/github/technus/tectech/Util.java
@@ -25,8 +25,7 @@ import net.minecraftforge.fluids.FluidStack;
import org.apache.commons.lang3.StringUtils;
import java.lang.reflect.Field;
-import java.util.ArrayList;
-import java.util.List;
+import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@@ -40,6 +39,18 @@ public final class Util {
private Util() {
}
+ @SuppressWarnings("ComparatorMethodParameterNotUsed")
+ public static <K, V extends Comparable<? super V>> SortedSet<Map.Entry<K, V>> entriesSortedByValues(Map<K, V> map) {
+ SortedSet<Map.Entry<K, V>> sortedEntries = new TreeSet<Map.Entry<K, V>>(
+ (e1, e2) -> {
+ int res = e1.getValue().compareTo(e2.getValue());
+ return res != 0 ? res : 1; // Special fix to preserve items with equal values
+ }
+ );
+ sortedEntries.addAll(map.entrySet());
+ return sortedEntries;
+ }
+
public static String intBitsToString(int number) {
StringBuilder result = new StringBuilder(16);
@@ -57,7 +68,7 @@ public final class Util {
}
public static String intBitsToShortString(int number) {
- StringBuilder result = new StringBuilder(16);
+ StringBuilder result = new StringBuilder(35);
for (int i = 31; i >= 0; i--) {
int mask = 1 << i;
@@ -73,10 +84,10 @@ public final class Util {
}
public static String longBitsToShortString(long number) {
- StringBuilder result = new StringBuilder(16);
+ StringBuilder result = new StringBuilder(71);
for (int i = 63; i >= 0; i--) {
- int mask = 1 << i;
+ long mask = 1L << i;
result.append((number & mask) != 0 ? ":" : ".");
if (i % 8 == 0) {