2013-02-19 2 views
0

Мое требование - Clone массив Object. Это своего рода код, я использую:Литье объекта массива

 Array numbers = Array.CreateInstance(typeof(int), 10); 
     index = 0; 
     foreach (int x in numbers) 
     { 
      numbers.SetValue(index * index, index); 
      index++; 
     } 
     Object numberClone = numbers.Clone(); 

Теперь, как я бросил Object numberClone к Array из intergers?

+0

На первый взгляд, вы пробовали это: Int [] arrayOfInt = (Int []) numberClone; ? – bytefire

+0

Почему бы просто не использовать ArrayList? – Madman

+0

Номер массиваClone = (Array) numbers.Clone(); Пробовал это? – scheien

ответ

2
Array numbers = Array.CreateInstance(typeof(int), 10); 
int index = 0; 
foreach (int x in numbers) 
{ 
    numbers.SetValue(index * index, index); 
    index++; 
} 
Array numberClone = (Array)numbers.Clone(); 
0

если вы используете .NET 3.5, это может помочь вам

object[] objarr = new object[] {1,2,3 }; 
int[] arr= objarr.Cast<int>().ToArray(); 
0
Array numbers = Array.CreateInstance(typeof(int), 10); 
      int index = 0; 
      foreach (int x in numbers) 
      { 
       numbers.SetValue(index * index, index); 
       index++; 
      } 
      Object numberClone = numbers.Clone(); 

      Array castNumbers = (Array)numberClone; 

      foreach(int x in castNumbers) 
      { 

       Console.WriteLine(x); 
      } 
0
Object numberClone = numbers.Clone(); 
var arr = numberClone as Array; 
var listOfInt = arr.OfType<int>().Select(c => c).ToArray(); 
0

Почему не устанавливать такое же значение в Еогеасп?

как этот

int[] numbers = new int[10](); 
int[] numberClone = new int[10](); 

foreach(var x in numbers) 
{ 
nubmers[index*index] = index; 
numberClone[index*index] = index; 
} 

Что-то вроде этого я сделал это без VS очень жаль, если его неправильно: P

Смежные вопросы