class java.util.Arrays$ArrayList<E> extends java.util.AbstractList<E> implements java.util.RandomAccess, java.io.Serializable
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: java.util.Arrays$ArrayList
super_class: java.util.AbstractList
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -2764017481108945198
private final E[] a;
descriptor: [Ljava/lang/Object;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: [TE;
void <init>();
descriptor: ([Ljava/lang/Object;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.util.AbstractList.<init>:()V
1: aload 0
aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Object[]
putfield java.util.Arrays$ArrayList.a:[Ljava/lang/Object;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/util/Arrays$ArrayList<TE;>;
0 3 1 array [Ljava/lang/Object;
Signature: ([TE;)V
MethodParameters:
Name Flags
array
public int size();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.util.Arrays$ArrayList.a:[Ljava/lang/Object;
arraylength
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/Arrays$ArrayList<TE;>;
public java.lang.Object[] toArray();
descriptor: ()[Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.util.Arrays$ArrayList.a:[Ljava/lang/Object;
invokevirtual java.lang.Object[].clone:()Ljava/lang/Object;
checkcast java.lang.Object[]
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/Arrays$ArrayList<TE;>;
public <T> T[] toArray();
descriptor: ([Ljava/lang/Object;)[Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.util.Arrays$ArrayList.size:()I
istore 2
start local 2 1: aload 1
arraylength
iload 2
if_icmpge 5
2: aload 0
getfield java.util.Arrays$ArrayList.a:[Ljava/lang/Object;
iload 2
3: aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
4: invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;ILjava/lang/Class;)[Ljava/lang/Object;
areturn
5: StackMap locals: int
StackMap stack:
aload 0
getfield java.util.Arrays$ArrayList.a:[Ljava/lang/Object;
iconst_0
aload 1
iconst_0
iload 2
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
6: aload 1
arraylength
iload 2
if_icmple 8
7: aload 1
iload 2
aconst_null
aastore
8: StackMap locals:
StackMap stack:
aload 1
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljava/util/Arrays$ArrayList<TE;>;
0 9 1 a [Ljava/lang/Object;
1 9 2 size I
Signature: <T:Ljava/lang/Object;>([TT;)[TT;
MethodParameters:
Name Flags
a
public E get();
descriptor: (I)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield java.util.Arrays$ArrayList.a:[Ljava/lang/Object;
iload 1
aaload
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/Arrays$ArrayList<TE;>;
0 1 1 index I
Signature: (I)TE;
MethodParameters:
Name Flags
index
public E set(int, );
descriptor: (ILjava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield java.util.Arrays$ArrayList.a:[Ljava/lang/Object;
iload 1
aaload
astore 3
start local 3 1: aload 0
getfield java.util.Arrays$ArrayList.a:[Ljava/lang/Object;
iload 1
aload 2
aastore
2: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/util/Arrays$ArrayList<TE;>;
0 3 1 index I
0 3 2 element TE;
1 3 3 oldValue TE;
Signature: (ITE;)TE;
MethodParameters:
Name Flags
index
element
public int indexOf(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield java.util.Arrays$ArrayList.a:[Ljava/lang/Object;
astore 2
start local 2 1: aload 1
ifnonnull 9
2: iconst_0
istore 3
start local 3 3: goto 7
4: StackMap locals: java.lang.Object[] int
StackMap stack:
aload 2
iload 3
aaload
ifnonnull 6
5: iload 3
ireturn
6: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
7: iload 3
aload 2
arraylength
if_icmplt 4
end local 3 8: goto 15
9: StackMap locals:
StackMap stack:
iconst_0
istore 3
start local 3 10: goto 14
11: StackMap locals: int
StackMap stack:
aload 1
aload 2
iload 3
aaload
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 13
12: iload 3
ireturn
13: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
14: iload 3
aload 2
arraylength
if_icmplt 11
end local 3 15: StackMap locals:
StackMap stack:
iconst_m1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Ljava/util/Arrays$ArrayList<TE;>;
0 16 1 o Ljava/lang/Object;
1 16 2 a [Ljava/lang/Object;
3 8 3 i I
10 15 3 i I
MethodParameters:
Name Flags
o
public boolean contains(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.util.Arrays$ArrayList.indexOf:(Ljava/lang/Object;)I
iconst_m1
if_icmpeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/util/Arrays$ArrayList<TE;>;
0 2 1 o Ljava/lang/Object;
MethodParameters:
Name Flags
o
public java.util.Spliterator<E> spliterator();
descriptor: ()Ljava/util/Spliterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield java.util.Arrays$ArrayList.a:[Ljava/lang/Object;
bipush 16
invokestatic java.util.Spliterators.spliterator:([Ljava/lang/Object;I)Ljava/util/Spliterator;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/Arrays$ArrayList<TE;>;
Signature: ()Ljava/util/Spliterator<TE;>;
public void forEach(java.util.function.Consumer<? super E>);
descriptor: (Ljava/util/function/Consumer;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=6, args_size=2
start local 0 start local 1 0: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: aload 0
getfield java.util.Arrays$ArrayList.a:[Ljava/lang/Object;
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 5
StackMap locals: java.util.Arrays$ArrayList java.util.function.Consumer top int int java.lang.Object[]
StackMap stack:
2: aload 5
iload 3
aaload
astore 2
start local 2 3: aload 1
aload 2
invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
end local 2 4: iinc 3 1
StackMap locals:
StackMap stack:
5: iload 3
iload 4
if_icmplt 2
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljava/util/Arrays$ArrayList<TE;>;
0 7 1 action Ljava/util/function/Consumer<-TE;>;
3 4 2 e TE;
Signature: (Ljava/util/function/Consumer<-TE;>;)V
MethodParameters:
Name Flags
action
public void replaceAll(java.util.function.UnaryOperator<E>);
descriptor: (Ljava/util/function/UnaryOperator;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: aload 0
getfield java.util.Arrays$ArrayList.a:[Ljava/lang/Object;
astore 2
start local 2 2: iconst_0
istore 3
start local 3 3: goto 6
4: StackMap locals: java.lang.Object[] int
StackMap stack:
aload 2
iload 3
aload 1
aload 2
iload 3
aaload
invokeinterface java.util.function.UnaryOperator.apply:(Ljava/lang/Object;)Ljava/lang/Object;
aastore
5: iinc 3 1
StackMap locals:
StackMap stack:
6: iload 3
aload 2
arraylength
if_icmplt 4
end local 3 7: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljava/util/Arrays$ArrayList<TE;>;
0 8 1 operator Ljava/util/function/UnaryOperator<TE;>;
2 8 2 a [Ljava/lang/Object;
3 7 3 i I
Signature: (Ljava/util/function/UnaryOperator<TE;>;)V
MethodParameters:
Name Flags
operator
public void sort(java.util.Comparator<? super E>);
descriptor: (Ljava/util/Comparator;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield java.util.Arrays$ArrayList.a:[Ljava/lang/Object;
aload 1
invokestatic java.util.Arrays.sort:([Ljava/lang/Object;Ljava/util/Comparator;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/util/Arrays$ArrayList<TE;>;
0 2 1 c Ljava/util/Comparator<-TE;>;
Signature: (Ljava/util/Comparator<-TE;>;)V
MethodParameters:
Name Flags
c
}
Signature: <E:Ljava/lang/Object;>Ljava/util/AbstractList<TE;>;Ljava/util/RandomAccess;Ljava/io/Serializable;
SourceFile: "Arrays.java"
NestHost: java.util.Arrays
InnerClasses:
private ArrayList = java.util.Arrays$ArrayList of java.util.Arrays