Olá, Bruno.
Tudo bem?
Ficamos felizes em saber que você está gostando das aulas. Vou te ajudar a entender como a linha array.Clone()
é passada para a variável numerosOrdenados
.
Na aula em questão, estamos trabalhando com a classe Array
do C#. Essa classe possui um método chamado Clone()
, que cria uma cópia do array original. No caso do exemplo dado, o array original é array
, que é passado como parâmetro para o método TestaMediana()
.
Então, na linha em que temos double[] numerosOrdenados = (double [])array.Clone();
, estamos criando uma cópia do array array
e atribuindo essa cópia à variável numerosOrdenados
. Essa cópia é feita através do método Clone()
.
Dessa forma, a variável numerosOrdenados
passa a ter os mesmos elementos do array original, mas em uma instância separada. Isso é útil para que possamos ordenar o array sem modificar o array original.
Por exemplo, se tivéssemos apenas double[] numerosOrdenados = array;
, estaríamos apenas atribuindo a referência do array original à variável numerosOrdenados
. Isso significa que qualquer modificação feita em numerosOrdenados
também afetaria o array original. Mas, com o uso do método Clone()
, garantimos que numerosOrdenados
seja uma cópia independente.
Espero que isso tenha esclarecido a sua dúvida. Se tiver mais alguma pergunta, é só me dizer. Espero ter ajudado e bons estudos!