Dart admite la asignación de un valor constante a una variable. Estos se realizan mediante el uso de la siguiente palabra clave:
- palabra clave constante
- palabra clave final
Estas palabras clave se utilizan para mantener el valor de una variable estático en todo el código base, lo que significa que una vez que se define la variable, su estado no se puede modificar. No hay limitaciones si estas palabras clave tienen un tipo de datos definido o no.
Palabra clave final en Dart
La palabra clave final se utiliza para codificar los valores de la variable y no se puede modificar en el futuro, ni ningún tipo de operación realizada en estas variables puede alterar su valor (estado).
// Without datatype final variable_name; // With datatype final data_type variable_name;
Ejemplo: uso de las palabras clave finales en un programa Dart.
Dart
void main() { // Assigning value to geek1 // variable without datatype final geek1 = "Geeks For Geeks"; // Printing variable geek1 print(geek1); // Assigning value to geek2 // variable with datatype final String geek2 = "Geeks For Geeks Again!!"; // Printing variable geek2 print(geek2); }
Producción:
Geeks For Geeks Geeks For Geeks Again!!
Si intentamos reasignar la misma variable, mostrará un error.
Palabra clave constante en Dart
La palabra clave Const en Dart se comporta exactamente como la palabra clave final. La única diferencia entre final y const es que const hace que la variable sea constante solo desde el momento de la compilación. El uso de const en un objeto hace que todo el estado profundo del objeto se fije estrictamente en tiempo de compilación y que el objeto con este estado se considere congelado y completamente inmutable .
Ejemplo: uso de palabras clave const en un programa Dart.
Dart
void main() { // Assigning value to geek1 // variable without datatype const geek1 = "Geeks For Geeks"; // Printing variable geek1 print(geek1); // Assigning value to // geek2 variable with datatype const String geek2 = "Geeks For Geeks Again!!"; // Printing variable geek2 print(geek2); }
Producción:
Geeks For Geeks Geeks For Geeks Again!!
Ejemplo: Asignación de valor sin palabra clave const y luego por palabra clave const.
Sin palabra clave constante
Dart
// Declaring a function gfg() => [1, 2]; // Main function void main() { // Assigning value // through function var geek1 = gfg(); var geek2 = gfg(); // Printing result // false print(geek1 == geek2); print(geek1); print(geek2); }
Producción :
false [1, 2] [1, 2]
Con palabra clave constante:
Dart
// Declaring a function gfg() => const[1, 2]; // Main function void main() { // Assigning value // through function var geek1 = gfg(); var geek2 = gfg(); // Printing result // true print(geek1 == geek2); print(geek1); print(geek2); }
Producción :
true [1, 2] [1, 2]
Propiedades de palabra clave const:
- Es necesario crearlos a partir de los datos disponibles durante el tiempo de compilación. Por ejemplo: configurar la string «GeeksForGeeks» está bien, pero configurar la hora actual no.
- Son profunda y transitivamente inmutables .
- Están canonicalizados .
Publicación traducida automáticamente
Artículo escrito por aditya_taparia y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA