What java data structure should be appropriate here
<p>I am very much new in java (but not to programming). I have to design a data structure, as indicated below. The columns are (dynamic and) identified by id (e.g. 77, 55, 67 etc). For each column, I can have dynamic entries in rows, but the entry "must be" following the order of insertion. Means when we retrieve, they should be output in the same order of insertion. After N entries, I want to delete the oldest entry, to control the list size.</p>

<p>MY QUESTION: What data structure (e.g. HashMap, ArrayList, Set etc) for columns and rows I should use for my problem in java.</p>

<p><img src="http://i.stack.imgur.com/BA4pt.png" alt="data"></p>
