length to see if a collection is empty.
Iterable contract does not require that a collection know its length or be
able to provide it in constant time. Calling
length just to see if the
collection contains anything can be painfully slow.
Instead, there are faster and more readable getters:
isNotEmpty. Use the one that doesn't require you to negate the result.
if (lunchBox.isEmpty) return 'so hungry...'; if (words.isNotEmpty) return words.join(' ');
if (lunchBox.length == 0) return 'so hungry...'; if (words.length != 0) return words.join(' ');