Playlist: Curso Grátis de FLUTTER e DART Completo
Curso de DART
Variáveis Tipo Listas em Dart
Listas
Talvez a coleção mais comum em quase todas as linguagens de programação seja a matriz ou o grupo ordenado de objetos. Em Dart, arrays são objetos List, então a maioria das pessoas simplesmente os chama de listas.
Os literais da lista de dardos se parecem com literais de matriz JavaScript. Aqui está uma lista simples de dardos:
var list = [1, 2, 3];
Nota: O dart infere que a lista tem o tipo List int. Se você tentar adicionar objetos não inteiros a essa lista, o analisador ou o tempo de execução gerará um erro. Para mais informações, leia sobre inferência de tipos.
As listas usam indexação baseada em zero, em que 0 é o índice do primeiro elemento e list.length – 1 é o índice do último elemento. Você pode obter o tamanho de uma lista e se referir aos elementos da lista como faria no JavaScript:
var list = [1, 2, 3];
assert (list.length == 3);
assert (lista [1] == 2);
list [1] = 1;
assert (lista [1] == 1);
Para criar uma lista que seja uma constante de tempo de compilação, adicione const antes do literal da lista:
var constantList = const [1, 2, 3];
// constantList [1] = 1; // Descomentar isso causa um erro.
O Dart 2.3 introduziu o operador de dispersão (…) e o operador de dispersão com reconhecimento de nulos (…?), Que fornecem uma maneira concisa de inserir vários elementos em uma coleção.
Por exemplo, você pode usar o operador de dispersão (…) para inserir todos os elementos de uma lista em outra lista:
var list = [1, 2, 3];
var list2 = [0, … lista];
assert (list2.length == 4);
Se a expressão à direita do operador de propagação puder ser nula, será possível evitar exceções usando um operador de dispersão com reconhecimento de nulo (…?):
lista de var;
var list2 = [0, …? lista];
assert (list2.length == 1);
Para mais detalhes e exemplos de uso do operador de spread, consulte a proposta do operador de spread.
O Dart 2.3 também introduziu collection if e collection para, que você pode usar para construir coleções usando condicionais (if) e repetition (for).
Veja um exemplo de uso de coleção para criar uma lista com três ou quatro itens:
var nav = [
‘Casa’,
‘Mobília’,
‘Plantas’,
if (promoActive) ‘Outlet’
];
Veja um exemplo de uso da coleção para manipular os itens de uma lista antes de adicioná-los a outra lista:
var listOfInts = [1, 2, 3];
var listOfStrings = [
‘# 0’,
para (var i em listOfInts) ‘# $ i’
];
assert (listOfStrings [1] == ‘# 1’);
Para obter mais detalhes e exemplos de uso da coleta, se e para, consulte a proposta de coleções de fluxo de controle.
O tipo de lista tem muitos métodos úteis para manipular listas. Para mais informações sobre listas, consulte Genéricos e Coleções.