I have a Table Like below

I run a Query to get Values in Table as Below
SELECT Id, UserName, UserId, Password,
CASE Status WHEN 1 THEN 'Active' ELSE 'Inactive' END AS Status
FROM users
Now I Java code for the Above Query is as below.
String[] arrUsersList[] = new String[100][5];
String[] arrUsersTem = new String[5];
pstmt = conn.createStatement(rs.TYPE_FORWARD_ONLY, rs.CONCUR_READ_ONLY);
rs = pstmt.executeQuery(strSQL);
while(rs.next())
{
arrUsersTem[0] = rs.getString("Id");
arrUsersTem[1] = rs.getString("UserName");
arrUsersTem[2] = rs.getString("UserId");
arrUsersTem[3] = rs.getString("Password");
arrUsersTem[4] = rs.getString("Status");
arrUsersList.add(arrUsersTem);
}
My Question is
I know I should use two dimensional array for getting the values from Recordset. I also know I am Doing it wrong way.What is the right way of taking records from Result set for the above.
Is array right option or i should use ArrayList or Some thing else.
Thanks for Reply.
Java is OOP language, so common way is to create class describing entities of your table and form
Collectionwith this class objects