Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Curiosidade: chamar função com ou sem parenteses.

Percebi na aula que o professor chamou uma funçao nota.isEmpty sem os parenteses.

if (nota == null || nota.isEmpty) {
    print("Não é possível adicionar uma nota ...
    ....

Se eu testar na IDE vou saber o resultado mas prefiro perguntar:
Por que não acusou erro chamando isEmpty sem parenteses se ao chamar uma variavel precisamos do ( ).
Exemplo: nota.add( nota!) ou getComando(). ou nota.isEmpty()
Desculpe a pergunta mas poderiam me explicar se tem diferença?

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta
solução!

Olá, Nataly, como vai?

No Dart, isEmpty é um getter, não um método. Isso significa que ele se comporta como uma propriedade da variável, e não como uma função que precisa ser chamada com parênteses. Quando você escreve nota.isEmpty, o Dart está acessando diretamente o valor booleano que indica se a string está vazia. Já métodos como add() ou getComando() precisam de parênteses porque são funções que podem executar código quando chamadas.

Por exemplo, nota.isEmpty retorna true ou false sem precisar de argumentos ou execução adicional, enquanto nota.add("texto") precisa ser executado para inserir o valor na lista. É por isso que a sintaxe muda: getters não usam parênteses, métodos usam.

Espero ter ajudado.

Siga firme nos seus estudos e conte com o fórum sempre que precisar.

Abraços :)

Caso este post tenha lhe ajudado, por favor, marcar como solucionado