The simplest approach is to create a new type (class) of Java object that represents each row in the spreadsheet, and then have a list of those objects. You would need to write your own code to search/filter/rank that list according to the attributes of that object.