DART - Usando List.generate

 Neste artigo veremos como usar o recurso List.generate do DART para gerar uma lista de valores.

DART(tradução: dardo, pequeno míssel) é a linguagem usada pelo Flutter.

O Flutter é um SDK de aplicativo móvel do Google que ajuda a criar aplicativos móveis modernos para iOS e Android usando uma única (quase) base de código.

Se você não conhece o Flutter veja o meu artigo :  Flutter - Primeiros contatos e impressões

O objetivo dos artigos sobre o DART é abordar recursos específicos da linguagem que são uma característica do DART de forma a ajudar programadores C# a entender esses recursos.

DART - Gerando uma lista de valores

O DART possui alguns recursos bem legais e úteis, um deles é a capacidade de gerar uma lista de valores.

A biblioteca principal do DART fornece um método utilitário para manipular a geração de valores para a estrutura de dados List, visto que gerar ou fazer dados simulados é uma tarefa bastante comum.

A definição é a seguinte:


List<E>.generate(int length, E generator(int index), { bool growable: true }) 

 

Onde:

Exemplos:

1- Gerando uma lista de números de 1 a 10


  var lista = new List<int>.generate(10, (i) => i + 1); 

 

Testando o código no dartpad em :https://dartpad.dartlang.org/ temos o seguinte resultado:

2- Gerando uma lista com números elevados a quadrado de 0 a 9


  var lista = new List<int>.generate(10, (i) => i * i); 

 

Testando o código no dartpad em :https://dartpad.dartlang.org/ temos o seguinte resultado:

3- Gerando uma lista de objetos

class Pessoa {
  final String nome;
  final String imagemUrl;
  Pessoa({this.nome, this.imagemUrl});
}
void main() {
    var listaPessoas = new List<Pessoa>.generate(20, (i) {
    return Pessoa(nome: 'Macoratti',imagemUrl: 'http://macoratti.net/imagem1.jpg');    
  });
}

Definimos uma classe com duas propriedades e um construtor e estamos criando uma lista de Pessoa gerando 20 objetos Pessoa.

Agora para renderizar a lista basta usar o widget ListView do Flutter.

Para obter um array bidimensional podemos combinar a utilização de List.generate conforme mostra o exemplo a seguir:

Veja a aplicação do List.generate no Flutter neste artigo :  Flutter Apresentando o widget GridView

"Porque há um só Deus, e um só Mediador entre Deus e os homens, Jesus Cristo homem."
1 Timóteo 2:5

 

Veja os Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) : clique e confira !

Quer migrar para o VB .NET ?

Quer aprender C# ??

Quer aprender os conceitos da Programação Orientada a objetos ?

Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ?


Referências:


José Carlos Macoratti