Métodos de Array
Parte da seção Fundamentos do Journey de C# da Coddy — lição 58 de 69.
Arrays são repletos de muitos métodos (funcionalidades). Para acessar um método, escreva:
Array.MethodName(arrayName, otherParameters)Métodos Comuns de Array:
Clear(array, index, length) - limpa os elementos de um array, definindo um intervalo de elementos como zero, false ou null:
int[] numbers = {1, 2, 3, 4, 5};
Array.Clear(numbers, 1, 3);
// numbers será {1, 0, 0, 0, 5}Reverse(array) - inverte a ordem dos elementos em um array:
int[] numbers = {1, 2, 3, 4, 5};
Array.Reverse(numbers);
// numbers será {5, 4, 3, 2, 1}Sort(array) - ordena os elementos em um array em ordem crescente:
int[] numbers = {5, 2, 9, 1, 5, 6};
Array.Sort(numbers);
// numbers será {1, 2, 5, 5, 6, 9}Copy(sourceArray, sourceIndex, destinationArray, destinationIndex, length) - copia um intervalo de elementos de um array para outro:
int[] source = {1, 2, 3, 4, 5};
int[] destination = new int[5];
Array.Copy(source, 0, destination, 0, 5);
// destination será {1, 2, 3, 4, 5}Exemplo com diferentes posições:
int[] source = {1, 2, 3, 4, 5};
int[] destination = new int[7];
Array.Copy(source, 1, destination, 2, 3);
// destination será {0, 0, 2, 3, 4, 0, 0}
// Copiou os elementos 2, 3, 4 de source começando no índice 1
// Colocou-os em destination começando no índice 2Desafio
FácilCrie um método chamado Merge que recebe dois arrays como argumentos. O método mescla os dois arrays em um array ordenado e o retorna.
Por exemplo, os seguintes argumentos: Merge(new string[] {"1", “4”, “2”}, new string[] {"2", “5”, “9”}) retornarão ["1", “2”, “2”, “4”, “5”, “9”]
Use Array.Copy() para copiar elementos de um array para outro. A sintaxe é:
Array.Copy(sourceArray, sourceStartPosition, destinationArray, destinationStartPosition, length)Por exemplo:
// Source array
string[] sourceArray = {"1", "2", "3", "4", "5"};
// Destination array
string[] destinationArray = new string[5];
// Copy elements from sourceArray to destinationArray
Array.Copy(sourceArray, 0, destinationArray, 0, 5);Array de destino após a cópia: 1 2 3 4 5
Folha de consulta
Arrays possuem métodos integrados acessados com a sintaxe Array.MethodName():
Clear(array, index, length)- define os elementos como zero, false ou nullReverse(array)- inverte a ordem dos elementosSort(array)- ordena os elementos em ordem crescenteCopy(sourceArray, sourceIndex, destinationArray, destinationIndex, length)- copia elementos entre arrays
Exemplos:
int[] numbers = {1, 2, 3, 4, 5};
Array.Clear(numbers, 1, 3);
// numbers será {1, 0, 0, 0, 5}int[] numbers = {1, 2, 3, 4, 5};
Array.Reverse(numbers);
// numbers será {5, 4, 3, 2, 1}int[] numbers = {5, 2, 9, 1, 5, 6};
Array.Sort(numbers);
// numbers será {1, 2, 5, 5, 6, 9}int[] source = {1, 2, 3, 4, 5};
int[] destination = new int[5];
Array.Copy(source, 0, destination, 0, 5);
// destination será {1, 2, 3, 4, 5}Experimente você mesmo
using System;
public class Program {
public static string[] Merge(string[] arr1, string[] arr2) {
// Escreva o código aqui
}
public static void Main(string[] args) {
string textArr1 = Console.ReadLine();
string textArr2 = Console.ReadLine();
string[] arr1 = textArr1.Split(",");
string[] arr2 = textArr2.Split(",");
string[] mergedArray = Merge(arr1, arr2);
Console.WriteLine(string.Join(", ", mergedArray));
}
}Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentos
4Operadores Parte 1
Operadores AritméticosOperador de MóduloIncremento/DecrementoPós-incremento/DecrementoAtalhos Aritméticos7IO Básico
Saída BásicaInterpolação de StringsLeitura de EntradaParseRevisão - Até 120Revisão - True ou False5Operadores Parte 2
Operadores de ComparaçãoOperadores Lógicos Parte 1Operadores Lógicos Parte 2Recapitulação - Lógica SimplesOperadores Lógicos Parte 311Fundamentos de Arrays
Declarando ArraysAcessando ElementosModificando ArraysMétodos de ArrayRecapitulação - Array de ProdutosEditar Recapitulação - Array Invertido3Variáveis Parte 2
VarConstantesConvenções de NomenclaturaRecapitulação - Inicializar VariáveisType Casting6Tomada de Decisão
Estrutura IfIf - ElseEstrutura SwitchOperador TernárioRevisão - If ElseIf - Else Aninhado