codigo:
void main() {
escolheMeioTransporte(Transporte.aviao);
Set<String> locaisVisitados = <String>{};
locaisVisitados = registrarDestinos("São Paulo", locaisVisitados);
locaisVisitados = registrarDestinos("Minas Gerais", locaisVisitados);
Map<String, double> registrarPrecos = {};
var SP = registrarPrecos["Sao Paulo"] = 1200;
var RJ = registrarPrecos["Rio de Janeiro"] = 1500;
var MG = registrarPrecos["Minas Gerais"] = 1300;
Pessoa pessoa01 = Pessoa("Natallia", 23, MG + SP , locaisVisitados);
print(pessoa01.toMap());
print('A viagem para São Paulo custou ${SP}');
print('A viagem para Minas Gerais custou ${MG}');
print('Codigo de Desconto:${Viagem.codigoDesconto}');
print('Com o codigo de desconto o valor seria:${Viagem.preco(MG + SP)}');
}
Set<String> registrarDestinos(String destino, Set<String> locais) {
locais.add(destino);
return locais;
}
class Viagem{
static String codigoDesconto = 'ASKMDK3';
double dinheiro;
Viagem(this.dinheiro);
static double preco(double dinheiro){
double desc = 0.50;
return dinheiro * desc;
}
}
class Pessoa {
String nome;
int idade;
double passagem;
dynamic lugares;
Pessoa(this.nome, this.idade, this.passagem, this.lugares);
Map<String, dynamic> toMap() {
return {
"nome": nome,
"idade": idade,
'passagens': passagem,
"lugares": lugares
};
}
}
void escolheMeioTransporte(Transporte locomocao) {
switch (locomocao) {
case Transporte.carro:
print("Vou de CARRO para aventura!");
break;
case Transporte.bike:
print("Vou de BIKE para aventura!");
break;
case Transporte.skate:
print("Vou de SKATE para aventura!");
break;
case Transporte.aviao:
print("Vou de AVIÃO para aventura!");
break;
case Transporte.patins:
print("Vou de PATINS para aventura!");
break;
case Transporte.trem:
print("Vou de TREM para aventura!");
break;
default:
print("Estou indo para aventura, isso que importa");
}
}
enum Transporte {
carro,
bike,
andando,
skate,
aviao,
patins,
trem,
}
resultado: