Pular para o conteúdo principal

prefer_is_empty

Saiba mais sobre a regra de lint prefer_is_empty.

Estável
Core
Correção disponível

Use isEmpty para Iterable e Map.

Detalhes

#

NÃO FAÇA usar length para verificar se uma coleção está vazia.

O contrato de Iterable não exige que uma coleção conheça seu tamanho nem que consiga fornecê-lo em tempo constante. Chamar length só para ver se a coleção contém algo pode ser dolorosamente lento.

Em vez disso, existem getters mais rápidos e mais legíveis: isEmpty e isNotEmpty. Use aquele que não exige negar o resultado.

RUIM:

dart
if (lunchBox.length == 0) return 'so hungry...';
if (words.length != 0) return words.join(' ');

BOM:

dart
if (lunchBox.isEmpty) return 'so hungry...';
if (words.isNotEmpty) return words.join(' ');

Ativar

#

Para ativar a regra prefer_is_empty, adicione prefer_is_empty em linter > rules no seu arquivo analysis_options.yaml:

analysis_options.yaml
yaml
linter:
  rules:
    - prefer_is_empty

Se você usa a sintaxe de mapa YAML para configurar as regras de lint, adicione prefer_is_empty: true em linter > rules:

analysis_options.yaml
yaml
linter:
  rules:
    prefer_is_empty: true

Encontrou essa página sem tradução ou que precisa de correção? Abra uma issue e nos ajude a manter esse site em PT-BR para ajudar pessoas como você.