List e Map Flashcards
lista.addALL([“eu”, “ela”, “nós”]);
.addAll adiciona na lista todos que escrevi
lista.addAll(lista2);
.addAll adiciona a lista2 inteira
lista.remove(20);
Irei remover o número 20 da lista.
lista.removeAt(3);
Quando é String irei remover a posição 3 da lista.
Lembrando que sempre começa na posição 0.
lista.clear();
Irei deletar tudo da lista.
lista
var lista2 = lista.contains(“Dante”);
print(lista2);
.contains
para verificar se contém algo.
O que significa index 5?
Elemento na posição 5.
final item = lista[2];
ou
final item = lista.elementAt(2);
Fica mais fácil na refatoração o
final item = lista.elementAt(2);
Pois só de passar o olho sei que peguei o 3º item da lista.
obs: um é [] o outro é ()
String? item= lista.firstWhere((e) => e.contains(“i”));
Quero saber primeira palavra que contém a letra letra “i”.
.firstWhere 1ª condição, palavra primeira.
.contains 2ª condição, letra “i”.
String? item= lista.firstWhere((e) => e.contains(“i”), orElse: () => “Vazio”);
Caso a condição não exista, o orElse:() irá retornar a palavra “Vazio” declarada.
Escreva de outra forma
String? item= lista.firstWhere((e) => e.contains(“i”), orElse: () => “Vazio”);
try {
String? item= lista.firstWhere((e) => e.contains(“i”));
print (item);
}
catch (e) {
print (“Vazio”);
}
Obs: orElse fica mais clean o código.
.forEach
.forEach é uma função assim como void main(){}
Então tenho que escrever .forEach(){} e declarar algo dentro dos ().
lista.forEach((e){
print(“Aluno $e”);
});
Irá sair Aluno nome1
Aluno nome2
etc, em vertical, de acordo com os nomes da lista.
lista.forEach((e){
print(“Aluno $e”);
});
Irá sair Aluno nome1
list2.indexWhere((abc) => abc == 15)
Se retornar 15 é que tem na lista elemento na 16ª posição.
Se retornar -1 é que não tem na lista.
lista1 [10] = 15
Troquei elemento na 11ª posição pelo número 15.
lista.insert(0, 5);
Irá adicionar o número 5 na posição 0, ou seja, 5 irá começar e o que estava na posição 0 irá para posição 1.
lista.insertAll(3, [2, 2, 1]);
Irá adicionar 2, 2, 1 na lista começando na posição 3.
lista.reduce((value, element) => value + element) / lista.lenght;
Irá somar todos os números da lista e dividir pelo total de elementos da lista para saber a média.
lista.reduce((value, element) => value + element) / lista.lenght;
Irá somar todos os números da lista e dividir pelo total de elementos da lista para saber a média.
final mapa = {“cpf” : “1212”, “rg” : “1111”);
print(mapa[“cpf”]);
Irá mostrar apenas os números do cpf.
final mapa = Map ();
mapa.addAll({“cpf” : “123”});
Outra maneira de declarar Map.
Qual a vantagem de utilizar Map no software?
A velocidade para acessar os dados de forma ágil.
Como adicionar mais de um dado no mesmo dado do map?
map.addAll({
“cel” : [“123”, “222”]);
Boa prática ao declarar map com string para string e int
final map = Map<String, dynamic>();
map.addAll({
“Só string” : “qualquer tipo” )};
Como fazer merge de dois mapas?
mapa1.addEntries(mapa2.Entries);
Como limpar o mapa inteiro?
mapa.clear();
Mapa, qual função para identificar chave e valor?
print(mapa.containsKey(“abc”));
print(mapa.containsValue(“abc”));
Obs: mapa { “Chave” : “Valor”}
Como remover chave do Map?
e somente valor?
mapa.remove(“nome da chave”);
mapa.removeWhere((key, value) => value == “valor que quero excluir”);
Como excluir do mapa todos os valores que contém o número 5?
mapa.removeWhere((key, value) => value.toString().contains(“5”));
Qual maneira mais comum para atualizar o dado do mapa?
mapa[“nome”] = “atualizar”;
obs nome : 22
fica nome : atualizar
Diga outra maneira para atualizar dado do mapa
mapa.update(“nome”, (value) => “atualizar”);
mapa.updateAll((key, value) => key == “nome” ? “x” : value);
se na chave tiver palavra nome o valor irá passar a ser x, caso não, irá ficar o mesmo valor.
O que é uma Stream?
É um fluxo de dados. E sempre na função Stream irá aparecer a palavra async* com asterisco e no final o return 0 é escrito yield item;
Qual a função da stream?
Fazer uma busca no banco de dados por exemplo.
Dê um exemplo de pesquisa no banco de dados com Stream.
Stream<String> streamFunction() async*{
final word = "Dante";
final list = word.split("");
for (var item in list){
yield item;
}</String>
Crie uma Stream.
final valueStream = Stream.value(“teste”);
valueStream.listen((event) {
print(event);});
Qual package do Dart que facilita o trabalho com Stream?
RX Dart.