concaténation Array en C #
-
04-10-2019 - |
Question
-
Comment puis-je initialiser intelligemment un tableau avec deux (ou plus) d'autres tableaux en C #?
double[] d1 = new double[5]; double[] d2 = new double[3]; double[] dTotal = new double[8]; // I need this to be {d1 then d2}
-
Une autre question: Comment les tableaux concaténer C # efficacement?
La solution
Vous pouvez utiliser CopyTo :
double[] d1 = new double[5];
double[] d2 = new double[3];
double[] dTotal = new double[d1.Length + d2.Length];
d1.CopyTo(dTotal, 0);
d2.CopyTo(dTotal, d1.Length);
Autres conseils
var dTotal = d1.Concat(d2).ToArray();
Vous pourriez probablement faire « mieux » en créant dtotal d'abord, puis simplement copier les deux entrées avec Array.Copy
.
Vous devez appeler Array.Copy
, comme ceci:
double[] d1 = new double[5];
double[] d2 = new double[3];
double[] dTotal = new double[d1.length + d2.length];
Array.Copy(d1, 0, dTotal, 0, d1.Length);
Array.Copy(d2, 0, dTotal, d1.Length, d2.Length);
using System.Linq;
int[] array1 = { 1, 3, 5 };
int[] array2 = { 0, 2, 4 };
// Concat array1 and array2.
var result1 = array1.Concat(array2).ToArray();
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow