package com.google.common.collect; import com.google.common.base.Function; import com.google.common.base.Objects; import com.google.common.base.Preconditions; import com.google.common.primitives.Ints; import java.io.Serializable; import java.util.AbstractList; import java.util.AbstractSequentialList; import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; import java.util.List; import java.util.ListIterator; import java.util.RandomAccess; /* loaded from: classes.dex */ public final class Lists { private static class TransformingRandomAccessList extends AbstractList implements RandomAccess, Serializable { final List a; final Function b; TransformingRandomAccessList(List list, Function function) { Preconditions.a(list); this.a = list; Preconditions.a(function); this.b = function; } @Override // java.util.AbstractList, java.util.AbstractCollection, java.util.Collection, java.util.List public void clear() { this.a.clear(); } @Override // java.util.AbstractList, java.util.List public T get(int i) { return this.b.apply(this.a.get(i)); } @Override // java.util.AbstractCollection, java.util.Collection, java.util.List public boolean isEmpty() { return this.a.isEmpty(); } @Override // java.util.AbstractList, java.util.AbstractCollection, java.util.Collection, java.lang.Iterable, java.util.List public Iterator iterator() { return listIterator(); } @Override // java.util.AbstractList, java.util.List public ListIterator listIterator(int i) { return new TransformedListIterator(this.a.listIterator(i)) { // from class: com.google.common.collect.Lists.TransformingRandomAccessList.1 @Override // com.google.common.collect.TransformedIterator T a(F f) { return TransformingRandomAccessList.this.b.apply(f); } }; } @Override // java.util.AbstractList, java.util.List public T remove(int i) { return this.b.apply(this.a.remove(i)); } @Override // java.util.AbstractCollection, java.util.Collection, java.util.List public int size() { return this.a.size(); } } private static class TransformingSequentialList extends AbstractSequentialList implements Serializable { final List a; final Function b; TransformingSequentialList(List list, Function function) { Preconditions.a(list); this.a = list; Preconditions.a(function); this.b = function; } @Override // java.util.AbstractList, java.util.AbstractCollection, java.util.Collection, java.util.List public void clear() { this.a.clear(); } @Override // java.util.AbstractSequentialList, java.util.AbstractList, java.util.List public ListIterator listIterator(int i) { return new TransformedListIterator(this.a.listIterator(i)) { // from class: com.google.common.collect.Lists.TransformingSequentialList.1 @Override // com.google.common.collect.TransformedIterator T a(F f) { return TransformingSequentialList.this.b.apply(f); } }; } @Override // java.util.AbstractCollection, java.util.Collection, java.util.List public int size() { return this.a.size(); } } public static ArrayList a() { return new ArrayList<>(); } public static ArrayList b(int i) { CollectPreconditions.a(i, "initialArraySize"); return new ArrayList<>(i); } public static ArrayList c(int i) { return new ArrayList<>(a(i)); } static int d(List list, Object obj) { if (list instanceof RandomAccess) { return e(list, obj); } ListIterator listIterator = list.listIterator(list.size()); while (listIterator.hasPrevious()) { if (Objects.a(obj, listIterator.previous())) { return listIterator.nextIndex(); } } return -1; } private static int e(List list, Object obj) { if (obj == null) { for (int size = list.size() - 1; size >= 0; size--) { if (list.get(size) == null) { return size; } } return -1; } for (int size2 = list.size() - 1; size2 >= 0; size2--) { if (obj.equals(list.get(size2))) { return size2; } } return -1; } static int a(int i) { CollectPreconditions.a(i, "arraySize"); return Ints.b(i + 5 + (i / 10)); } private static int c(List list, Object obj) { int size = list.size(); int i = 0; if (obj == null) { while (i < size) { if (list.get(i) == null) { return i; } i++; } return -1; } while (i < size) { if (obj.equals(list.get(i))) { return i; } i++; } return -1; } static int b(List list, Object obj) { if (list instanceof RandomAccess) { return c(list, obj); } ListIterator listIterator = list.listIterator(); while (listIterator.hasNext()) { if (Objects.a(obj, listIterator.next())) { return listIterator.previousIndex(); } } return -1; } public static ArrayList a(Iterable iterable) { Preconditions.a(iterable); if (iterable instanceof Collection) { return new ArrayList<>(Collections2.a(iterable)); } return a(iterable.iterator()); } public static ArrayList a(Iterator it) { ArrayList a = a(); Iterators.a(a, it); return a; } public static List a(List list, Function function) { return list instanceof RandomAccess ? new TransformingRandomAccessList(list, function) : new TransformingSequentialList(list, function); } static boolean a(List list, Object obj) { Preconditions.a(list); if (obj == list) { return true; } if (!(obj instanceof List)) { return false; } List list2 = (List) obj; int size = list.size(); if (size != list2.size()) { return false; } if (!(list instanceof RandomAccess) || !(list2 instanceof RandomAccess)) { return Iterators.a(list.iterator(), (Iterator) list2.iterator()); } for (int i = 0; i < size; i++) { if (!Objects.a(list.get(i), list2.get(i))) { return false; } } return true; } }