1. O atributo comum do array, Length, retorna o número de elementos. LongLength é usado quando o número de elementos excede o intervalo do tipo int.
2. A classe Array é uma classe abstrata e não pode usar o construtor para criar um array.
Mas isso pode ser feito
visualizar cópia simples para impressão da área de transferência?
Matriz iArray = new int[] { 1, 2, 3, 4 };
for (int i = 0; i <iArray.Length; i++)
{
Console.WriteLine(iArray.GetValue(i));
}
Matriz iArray = new int[] { 1, 2, 3, 4 };
for (int i = 0; i <iArray.Length; i++)
{
Console.WriteLine(iArray.GetValue(i));
}
Ou use o método estático CreateInstance, especialmente quando o tipo de elemento do array não é conhecido antecipadamente, você pode definir o array assim
O método SetValue é usado para definir e o método GetValue é usado para ler.
visualizar cópia simples para impressão da área de transferência?
Matriz matriz = Array.CreateInstance(typeof(string), 3);
array.SetValue("Tom", 0);
array.SetValue("Jack", 1);
array.SetValue("Conta", 2);
for (int i = 0; i < array.Comprimento; i++)
{
Console.WriteLine(array.GetValue(i));
}
Matriz matriz = Array.CreateInstance(typeof(string), 3);
array.SetValue("Tom", 0);
array.SetValue("Jack", 1);
array.SetValue("Conta", 2);
for (int i = 0; i < array.Comprimento; i++)
{
Console.WriteLine(array.GetValue(i));
}
※Este método também pode ser usado para criar matrizes multidimensionais
3. Para copiar um array, use o método Clone().
Se os elementos do array forem do tipo valor, todos os valores serão copiados,
Se o elemento da matriz for um tipo de referência, copie a referência
※ Se você precisar de uma cópia profunda de um array contendo um tipo de referência, deverá iterar o array e criar um novo objeto
Para ilustrar a cópia de tipos de referência, consulte a seguinte classe
visualizar cópia simples para impressão da área de transferência?
classe pública Pessoa
{
string pública Nome { get set }
string pública Sobrenome { obter;
Pessoa pública (string Nome, string Sobrenome)
{
//Quando o parâmetro tiver o mesmo nome de um membro da classe, use isto para se referir ao membro da classe (pessoalmente é recomendado não usá-lo desta forma)
this.PrimeiroNome = PrimeiroNome;
this.Sobrenome = Sobrenome;
}
//Reescreve a classe ToString
string de substituição pública ToString()
{
return string.Format("{0} {1}", Nome, Sobrenome);
}
}
programa de aula
{
vazio estático principal(string[] args)
{
Pessoa[] pessoas1 = nova Pessoa[2];
pessoas1[0] = new Pessoa("Tom", "lin");
pessoas1[1] = nova Pessoa("Jack", "Rader");
Pessoa[] pessoas2 = pessoas1.Clone() as Pessoa[];
pessoas2[0].PrimeiroNome = "Cópia 2";
//Chama para copiar o array de origem
Console.WriteLine(pessoas1[0].Nome);
//O resultado é a cópia 2, não o Tom. Pode-se observar que o método Clone apenas copia a referência.
Console.Leitura();
}
}
classe pública Pessoa
{
string pública Nome { get set }
string pública Sobrenome { obter;
Pessoa pública (string Nome, string Sobrenome)
{
//Quando o parâmetro tiver o mesmo nome de um membro da classe, use isto para se referir ao membro da classe (pessoalmente é recomendado não usá-lo desta forma)
this.PrimeiroNome = PrimeiroNome;
this.Sobrenome = Sobrenome;
}
//Reescreve a classe ToString
string de substituição pública ToString()
{
return string.Format("{0} {1}", Nome, Sobrenome);
}
}
programa de aula
{
vazio estático principal(string[] args)
{
Pessoa[] pessoas1 = nova Pessoa[2];
pessoas1[0] = new Pessoa("Tom", "lin");
pessoas1[1] = nova Pessoa("Jack", "Rader");
Pessoa[] pessoas2 = pessoas1.Clone() as Pessoa[];
pessoas2[0].PrimeiroNome = "Cópia 2";
//Chama para copiar o array de origem
Console.WriteLine(pessoas1[0].Nome);
//O resultado é a cópia 2, não o Tom. Pode-se observar que o método Clone apenas copia a referência.
Console.Leitura();
}
}
3. A classe Array também implementa a classificação por bolha de elementos no array, o método Sort.
Para matrizes simples, você pode classificar diretamente
Array.Sort(iArray); onde iArray é uma matriz int.
-