Array: Instanciar definindo todos os membros para o mesmo valor – C#

Olá pessoal!

Neste post irei mostrar como inicializar um Array, definindo todas as entradas para o mesmo valor padrão.

Por questões de facilidade, nos exemplos eu irei usar um Array do tipo byte (byte[]) com o comprimento de 256 items.

Por padrão, quando se inicializa um array do tipo byte, como no exemplo abaixo, todas as entradas serão definidas para 0.

byte[] b = new byte[256];

Array inicializa default

Porém, e se você precisar inicializar o array para um outro valor que não seja 0?

Existem várias formas! A primeira que irei mostrar é funcional em todas as versões do .Net Framework (1.0 até a atual):

byte[] b = System.Collections.ArrayList.Repeat((byte)32, 256).ToArray(typeof(byte)) as byte[];

32 é o valor padrão a ser utilizado, e 256 vai ser o comprimento do array.

Array inicializa compati

Também é possível fazer isso usando LINQ (.Net Framework 3.5+):

byte[] b = System.Linq.Enumerable.Repeat<byte>(32, 256).ToArray();

Enfim, é algo bem útil em certas ocasiões.

Até a próxima!

Anúncios

Deixe um comentário :)

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s