Costumo encontrar códigos como o seguinte:
if ( items != null)
{
foreach(T item in items)
{
//...
}
}
Basicamente, a if
condição garante que o foreach
bloco será executado apenas se items
não for nulo. Estou me perguntando se a if
condição é realmente necessária ou foreach
se tratarei do caso items == null
.
Quer dizer, posso simplesmente escrever
foreach(T item in items)
{
//...
}
sem se preocupar se items
é nulo ou não? A if
condição é supérflua? Ou isso depende do tipo de items
ou talvez em T
bem?
null
) generalizando todo o loop para o LCD de Enumerable
(como a utilização ??
faria ), b) requerer a adição de um Método de Extensão para cada Projeto, ou c) Requer evitar null
IEnumerable
s (Pffft! Puh-LEAZE! SMH.) para começar com (cuz, null
significa N / A, enquanto lista vazia significa, é aplicável. mas é atualmente, bem, vazio !, ou seja, um funcionário pode ter comissões que são N / A para não vendas ou vazio para vendas quando não ganhou nenhuma).