Não retorne null:
Problemas com null:
Argumento contra o null:
Alternativas eficientes:
Desempenho otimizado:
Exemplos de código:
Método incorreto que retorna null:
// Exemplo incorreto public ListgetCheeses() { return cheesesInStock.isEmpty() ? null : new ArrayList(cheesesInStock); }
Tratamento inadequado no cliente:
Listcheeses = shop.getCheeses(); if (cheeses != null && !cheeses.isEmpty()) { // Lógica para lidar com queijos disponíveis }
Método correto que retorna uma coleção vazia:
// Exemplo correto public ListgetCheeses() { return cheesesInStock.isEmpty() ? Collections.emptyList() : new ArrayList(cheesesInStock); }
Uso de uma coleção vazia imutável:
public ListgetCheeses() { return cheesesInStock.isEmpty() ? Collections.emptyList() : new ArrayList(cheesesInStock); }
Uso com arrays vazios:
// Retorno de array vazio corretamente public Cheese[] getCheeses() { return cheesesInStock.toArray(new Cheese[0]); }
Uso otimizado de array vazio:
private static final Cheese[] EMPTY_CHEESE_ARRAY = new Cheese[0]; public Cheese[] getCheeses() { return cheesesInStock.toArray(EMPTY_CHEESE_ARRAY); }
Conclusão:
Nunca retorne null: Sempre prefira coleções ou arrays vazios. Isso simplifica a API, evita erros e raramente impacta negativamente o desempenho.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3