1) In general, expanding array extents is painful, whereas, adding another temp-table record is business as usual. This would be my #1 reason.
2) Arrays are frowned upon, and in many cases not really supported, in the SQL (IBM, MSFT, ORCL etc.) world ... so, if you want to be compatible with...