Menu
Coddy logo textTech

Valores Padrão de Parâmetros

Parte da seção Fundamentos do Journey de Dart da Coddy — lição 75 de 94.

Valores padrão de parâmetros permitem que você especifique valores de reserva para parâmetros de função que não são fornecidos quando a função é chamada.

Crie uma função com um valor de parâmetro padrão:

void greet(String name, [String greeting = 'Hello']) {
  print('$greeting, $name!');
}

Chame a função com e sem o parâmetro opcional:

void main() {
  greet('Dart');
  greet('Dart', 'Welcome');
}

Após executar o código acima, a saída será:

Hello, Dart!
Welcome, Dart!

Você também pode usar valores padrão com parâmetros nomeados:

void showInfo({required String name, int age = 30}) {
  print('$name is $age years old');
}

void main() {
  showInfo(name: 'Alex');
  showInfo(name: 'Maya', age: 25);
}

Após executar o código acima, a saída será:

Alex is 30 years old
Maya is 25 years old
challenge icon

Desafio

Iniciante

Neste desafio, você praticará o uso de valores de parâmetro padrão em funções Dart. Valores de parâmetro padrão permitem que você especifique um valor que será usado se o parâmetro não for fornecido ao chamar a função.

Complete a função greet adicionando um valor padrão de "Hello" para o parâmetro greeting.

Saída esperada:

Hello, Alice!
Welcome, Bob!

Folha de consulta

Os valores de parâmetro padrão fornecem valores de reserva para os parâmetros de função quando não fornecidos durante as chamadas de função.

Para parâmetros posicionais opcionais, use colchetes com valores padrão:

void greet(String name, [String greeting = 'Hello']) {
  print('$greeting, $name!');
}

greet('Dart');           // Hello, Dart!
greet('Dart', 'Welcome'); // Welcome, Dart!

Para parâmetros nomeados, atribua valores padrão diretamente:

void showInfo({required String name, int age = 30}) {
  print('$name is $age years old');
}

showInfo(name: 'Alex');              // Alex is 30 years old
showInfo(name: 'Maya', age: 25);     // Maya is 25 years old

Experimente você mesmo

void main() {
  // Esses nomes já estão definidos para você
  String name1 = 'Alice';
  String name2 = 'Bob';
  
  // TODO: Chame a função greet duas vezes:
  // 1. Uma vez apenas com name1 (deve usar a saudação padrão)
  // 2. Uma vez com name2 e a saudação "Welcome"
  greet(name1);
  greet(name2, "Welcome");
}

// TODO: Modifique esta função para adicionar um valor padrão de "Hello" para o parâmetro greeting
void greet(String name, String greeting) {
  print('$greeting, $name!');
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos