Main "inside" reason for collection comprehension is in fact "allow compiler generate code as it sees fit based on this (declarative) description of how should that collection be constructed".
But yeah, if you are writing performance code, you should be familiar with "collection builder" idiom and so on