Parámetros Posicionales Opcionales
Parte de la sección Fundamentos del Journey de Dart de Coddy — lección 72 de 94.
Parámetros posicionales opcionales en Dart te permiten crear funciones donde algunos parámetros son opcionales. Los defines colocando parámetros dentro de corchetes cuadrados [].
Crea una función con parámetros posicionales opcionales:
void greet(String name, [String? greeting]) {
if (greeting != null) {
print('$greeting, $name!');
} else {
print('Hello, $name!');
}
}
void main() {
greet('Dart');
greet('Dart', 'Welcome');
}Después de ejecutar el código anterior, la salida será:
Hello, Dart!
Welcome, Dart!Puedes tener múltiples parámetros opcionales:
int calculateTotal(int quantity, [int price = 10, int tax = 2]) {
return quantity * price + tax;
}
void main() {
print(calculateTotal(5));
print(calculateTotal(5, 20));
print(calculateTotal(5, 20, 5));
}Después de ejecutar el código anterior, la salida será:
52
102
105Desafío
PrincipianteEn este desafío, practicarás el uso de parámetros posicionales opcionales en funciones de Dart. Los parámetros posicionales opcionales te permiten crear funciones donde algunos parámetros son opcionales.
Completa la función greet a continuación que toma un parámetro name requerido y un parámetro title opcional. Si se proporciona el título, la función debe devolver un saludo con tanto el título como el nombre. Si no se proporciona título, debe usar solo el nombre.
Salida esperada:
Hello, John!
Hello, Dr. Smith!Hoja de referencia
Los parámetros posicionales opcionales en Dart se definen colocando los parámetros dentro de corchetes cuadrados []:
void greet(String name, [String greeting]) {
if (greeting != null) {
print('$greeting, $name!');
} else {
print('Hello, $name!');
}
}Puedes tener múltiples parámetros opcionales con valores predeterminados:
int calculateTotal(int quantity, [int price = 10, int tax = 2]) {
return quantity * price + tax;
}Llama a funciones con parámetros opcionales proporcionando solo los argumentos requeridos o incluyendo los opcionales:
greet('Dart'); // Uses default behavior
greet('Dart', 'Welcome'); // Uses provided optional parameterPruébalo tú mismo
void main() {
// Estas variables ya están definidas para ti
String person1 = "John";
String person2 = "Smith";
String title = "Dr.";
// Llama a la función greet solo con el nombre
print(greet(person1));
// Llama a la función greet con nombre y título
print(greet(person2, title));
}
// TODO: Completa la función greet con un parámetro de título opcional
// El parámetro de título debe ser opcional (usa corchetes [])
String greet(String name) {
// Si se proporciona título, devuelve "Hello, {title} {name}!"
// Si no se proporciona título, devuelve "Hello, {name}!"
}
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
4Operadores Parte 2
Operadores de ComparaciónAND LógicoOR LógicoNOT LógicoOperadores de Prueba de TipoResumen - Realizando Comparaciones7Trabajando con Cadenas
Concatenación de CadenasInterpolación de CadenasCadenas MultilíneaPropiedades de CadenasMétodos Básicos de Cadenas10Colecciones - Conceptos básicos de Mapas
¿Qué son los Mapas?Creando un MapaAccediendo a Valores por ClavePares Clave-ValorObteniendo el Tamaño del MapaObteniendo las ClavesObteniendo los ValoresVerificando si una Clave Existe13Null Safety en Profundidad
Comprendiendo NullTipos NullableTipos No NullableOperador de Afirmación NullInicialización TardíaResumen - Manejo Seguro de Null16Desafíos Fundamentales
Desafío: Lista de cálculosDesafío: Suma de númerosDesafío: Encontrar producto2Variables y Tipos de Datos Básicos
¿Qué son las Variables?CadenasEnteros (int)Dobles (double)Booleanos (bool)Inferencia de Tipos con 'var'Variables FinalesVariables ConstantesConvenciones de NombresSeguridad Básica ante NullResumen - Declarando Variables8Flujo de control - Bucles
El bucle 'for'El bucle 'while'El bucle 'do-while'Usando 'break' en buclesUsando 'continue' en buclesResumen - Código repetitivo3Operadores Parte 1
Operadores AritméticosDivisión EnteraOperador MóduloIncremento y DecrementoAtajos de AsignaciónResumen - Cálculos Simples6Flujo de Control - Toma de Decisiones
La sentencia 'if'La sentencia 'else'La sentencia 'else if'Resumen - Decisiones SimplesSentencias 'if' AnidadasLa sentencia 'switch'9Colecciones - Listas Básicas
¿Qué son las listas?Creando una listaAccediendo por índiceObteniendo la longitud de la listaAgregando elementosEliminando elementosComprobando si una lista está vacíaIterando sobre una lista12Funciones Avanzadas
Parámetros Posicionales OpcionalesParámetros NombradosParámetros Nombrados RequeridosValores de Parámetro por DefectoResumen - Parámetros de Función15Proyecto: Calculadora Simple
ConfigurandoDeclarando Número