Use more efficient entrySet iterator instead of keySet + get()

The loop extracted keys from `folderMap` and then called
`folderMap.get(...)` for every key. If both the key and the value needs
to be iterated on, `Map.entrySet()` is a more efficient solution as it
doesn't require O(n) Map lookups.
typofix in comment (desti{o,}nation)
replaced unnecessary explicit iterator use with for-each loop
replaced unnecessary explicit iterator use with for-each loop
removed unnecessary explicit cast
replaced for with for-each loop and optimized List implementation
use built-in TextUtils.join instead of StringBuilder
converted for to for-each loop with short circuit evaluation
use built-in TextUtils.join instead of StringBuilder
use built-in TextUtils.join instead of StringBuilder
replaced for with for-each loop
replaced for with for-each loop
replaced for with for-each loop
replaced entrySet + getKey with keySet
use more idiomatic String.isEmpty() instead of comparing length to 0
use Set instead of implementation type