How to use concatenation or arithmetic operators in queue methods

module queue_test();

int queue_a[] = {2,4,6,8}; int q_match1[],q_match2[$];
`define TWO 2

initial begin

q_match1 = queue_a.find_index with (item == {1'h1,1'h0});
q_match2 = queue_a.find_index with (item == `TWO);
$display("q_match1: %p, q_match2: %p",q_match1,q_match2);

end

endmodule

Current output: q_match1: '{0} , q_match2: '{0}

Why is the concatenated value or the compiler directive value not equated to 2.

In reply to ramesh babu:
You are using
find_index()
, not
find()
, so it is correctly displaying the index of the first element.