我想問如何切片數組而不使用Array.Copy。 我會給你一個我想要達到的例子,以便你能理解我。正確的窗體切片C#中的數組#
比方說,我有這個數組。稱爲原始
[1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15]
我想從給定的某些長度的起始索引的副本陣列,可以說,我想元件之一元件6我想要的代碼,以執行該任務如
int startIndex = 0;
int lenght= 5;
int[] CopyArray = ArrayFromRange(Original, startIndex, length);
然後copyArray將be:
[1 | 2 | 3 | 4 | 5] 我不希望使用Array.Copy,因爲我會循環這讓隨後的片
,所以我會做
int length = 3;
for(int i = 0; i < OriginalArray.Length; i++)
{
int[] CopyArray = ArrayFromRange(OriginalArray, i, length);
// perform some operations
}
這會給我每次4個元素循環執行的數組它然後我會做一些操作。但是如果我做了Array.Copy
它會拋出一個OutOfBoundsException
當我在循環中獲得值13時,它會嘗試複製不存在的數組[15]。我想避免這些錯誤。
我上的WinForms開發,.NET 4.0
不像論壇網站,我們不使用「謝謝」或「任何幫助表示讚賞」,或在[so]上簽名。請參閱「[應該'嗨','謝謝',標語和致敬從帖子中刪除?](http://meta.stackexchange.com/questions/2950/should-hi-thanks-taglines-and-salutations-be -removed-from-posts) –