faload

Load float from array

Bytecode

Type Description
u1 faload opcode = 0x30 (48)

Stack ..., arrayref, index =>..., value

Description

Retrieves an entry from a float array and places it on the stack. arrayref is a reference to an array of single-precision floats. index is an int. The arrayref and index are removed from the stack, and the single-precision float entry at the given index in the array is pushed onto the stack.

The arrayref must be of type reference and must refer to an array whose components are of type float.

The index must be of type int. Both arrayref and index are popped from the operand stack.

The float value in the component of the array at index is retrieved and pushed onto the top of the operand stack.

Example

; This is like the Java code:
;     float x = arr[0];
; where x is local variable 2 and arr is a float
; array in local variable 1
aload_1       ; load local variable 1 onto the stack
iconst_0      ; push the integer 0 onto the stack
faload        ; retrieve the entry
fstore_2      ; store the entry in local variable 2

Exceptions

NullPointerException - arrayref is null

ArrayIndexOutOfBoundsException - index is < 0 or >= arrayref.length