In reply to Tamir:
Please use code tags making your code easier to read. I have added them for you.
You need to use the get() method of uvm_queue to access the internal queue elements
for (int ii=0 ; ii<=(v_size-1) ; ii=ii+1)
begin
mem_entry entry = ml_mem_array[mem_id].get(ii);
if (entry.m_addr == a_addr)
return entry;
end