ListUtil class
Пакет: com.hypixel.hytale.common.util
Файл: com/hypixel/hytale/common/util/ListUtil.java
Поля (15)
| Модификаторы | Тип | Имя |
|---|---|---|
|
List |
var2 |
|
Object |
var2 |
|
int |
var3 |
|
int |
var4 |
|
int |
var4 |
|
int |
var4 |
|
|
var4 |
|
int |
var5 |
|
int |
var5 |
|
int |
var5 |
|
|
var5 |
|
int |
var6 |
|
int |
var6 |
|
Object |
var7 |
|
int |
var8 |
Методы (15)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
static |
<T, V> int |
binarySearch<T, V> int binarySearch(@Nonnull List<? extends T> var0, @Nonnull Function<T, V> var1, V var2, @Nonnull Comparator<? super V> var3) |
static |
<T> boolean |
emptyOrAllNull<T> boolean emptyOrAllNull(@Nonnull List<T> var0) |
abstract |
|
for for(int var1 = 0; var1 < var0.size() |
|
|
if if(var4 < var5) |
|
|
if if(var5 < var6) |
|
|
if if(var2 != null) |
|
|
if if(var8 < 0) |
|
|
if if(var8 <= 0) |
static |
<T> void |
removeIf<T> void removeIf(@Nonnull List<T> var0, @Nonnull Predicate<T> var1) |
static |
<T, U> void |
removeIf<T, U> void removeIf(@Nonnull List<T> var0, @Nonnull BiPredicate<T, U> var1, U var2) |
static |
<T, U, V> void |
unstableRemoveIf<T, U, V> void unstableRemoveIf(@Nonnull List<T> var0, @Nullable U var1, @Nullable V var2, @Nonnull TriPredicate<T, U, V> var3) |
static |
<T, U, V, W> void |
unstableRemoveIf<T, U, V, W> void unstableRemoveIf(@Nonnull List<T> var0, @Nullable U var1, @Nullable V var2, @Nullable W var3, @Nonnull QuadPredicate<T, U, V, W> var4) |
|
|
while while(var4 <= var5) |
|
|
while while(var5 <= var6) |
|
|
while while(var4 <= var5) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.common.util;
class="kw">import com.hypixel.hytale.function.predicate.QuadPredicate;
class="kw">import com.hypixel.hytale.function.predicate.TriPredicate;
class="kw">import it.unimi.dsi.fastutil.objects.ObjectArrayList;
class="kw">import java.util.Comparator;
class="kw">import java.util.List;
class="kw">import java.util.function.BiPredicate;
class="kw">import java.util.function.Function;
class="kw">import java.util.function.Predicate;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class ListUtil {
class="kw">public ListUtil() {
}
@Nonnull
class="kw">public class="kw">static <T> List<List<T>> partition(@Nonnull List<T> var0, int var1) {
List var2 = new ObjectArrayList();
int var3 = 0;
while (var3 < var0.size()) {
int var4 = Math.min(var0.size(), var3 + var1);
var2.add(var0.subList(var3, var4));
var3 += var1;
}
class="kw">return var2;
}
class="kw">public class="kw">static <T> void removeIf(@Nonnull List<T> var0, @Nonnull Predicate<T> var1) {
for (int var2 = var0.size() - 1; var2 >= 0; var2--) {
if (var1.test(var0.get(var2))) {
var0.remove(var2);
}
}
}
class="kw">public class="kw">static <T, U> void removeIf(@Nonnull List<T> var0, @Nonnull BiPredicate<T, U> var1, U var2) {
for (int var3 = var0.size() - 1; var3 >= 0; var3--) {
if (var1.test(var0.get(var3), var2)) {
var0.remove(var3);
}
}
}
class="kw">public class="kw">static <T, U, V> void unstableRemoveIf(@Nonnull List<T> var0, @Nullable U var1, @Nullable V var2, @Nonnull TriPredicate<T, U, V> var3) {
int var4 = 0;
int var5 = var0.size() - 1;
while (var4 <= var5) {
if (var3.test(var0.get(var4), var1, var2)) {
if (var4 < var5) {
var0.set(var4, var0.get(var5));
}
var0.remove(var5);
var5--;
} else {
var4++;
}
}
}
class="kw">public class="kw">static <T, U, V, W> void unstableRemoveIf(
@Nonnull List<T> var0, @Nullable U var1, @Nullable V var2, @Nullable W var3, @Nonnull QuadPredicate<T, U, V, W> var4
) {
int var5 = 0;
int var6 = var0.size() - 1;
while (var5 <= var6) {
if (var4.test(var0.get(var5), var1, var2, var3)) {
if (var5 < var6) {
var0.set(var5, var0.get(var6));
}
var0.remove(var6);
var6--;
} else {
var5++;
}
}
}
class="kw">public class="kw">static <T> boolean emptyOrAllNull(@Nonnull List<T> var0) {
for (int var1 = 0; var1 < var0.size(); var1++) {
Object var2 = var0.get(var1);
if (var2 != null) {
class="kw">return false;
}
}
class="kw">return true;
}
class="kw">public class="kw">static <T, V> int binarySearch(@Nonnull List<? class="kw">extends T> var0, @Nonnull Function<T, V> var1, V var2, @Nonnull Comparator<? super V> var3) {
int var4 = 0;
int var5 = var0.size() - 1;
while (var4 <= var5) {
int var6 = var4 + var5 >>> 1;
Object var7 = (T)var0.get(var6);
int var8 = var3.compare(var1.apply(var7), var2);
if (var8 < 0) {
var4 = var6 + 1;
} else {
if (var8 <= 0) {
class="kw">return var6;
}
var5 = var6 - 1;
}
}
class="kw">return -(var4 + 1);
}
}