4
A
回答
13
數組的長度是不變的,但你可以不空""
字符串創建一個新的數組:
string[] newArray = myArray.Where(str => str != "").ToArray();
6
如果它是一個字符串數組,你可以這樣做:
string[] results = theArray.Where(s => !string.IsNullOrWhitespace(s)).ToArray();
如果你只是去重複的結果,有沒有必要轉換回一個數組,你可以在最後離開關.ToArray()
。
編輯:
如果你只是想刪除最後一個單元格,而不是空項(由您編輯的版本建議),你可以做到這一點使用Array.Copy比更有效地利用上面的LINQ聲明:
string[] results = new string[theArray.Length - 1];
Array.Copy(theArray, results, results.Length);
0
- 創建新陣列等於現有陣列大小-1
- aNewArray = aOldArray
Ofcourse,你可以只空的最後一個元素數組中,但是這將導致問題以後。否則,請使用一個很好的靈活列表。
2
var newArraySize = oldArray.Length - 1;
var newArray = new string[newArraySize];
Array.Copy(oldArray, newArray, newArraySize);
0
如果你一直想擺脫過去的元素,
int[] a = new[] {1, 2, 3, 4, 5};
int[] b = new int[a.Length - 1];
Array.Copy(a, b, a.Length - 1);
5
數組是一個固定大小的集合對象。這使得它對於你想要做的事情來說可悲的不足。你可以做的最好的是創建另一個一個少一個元素。這太貴了。
解決真正的問題,這應該是一個List<string>
,現在它的簡單。
8
呃...只是調整它
Array.Resize(ref theArray, theArray.Length -1);
從文檔
公共靜態無效調整大小(參照T []數組,整數新尺寸)
相關問題
- 1. C++從字符串中刪除字符
- 2. 從c字符串中刪除字符
- 3. C從字符串中刪除字符
- 4. 從C字符串中刪除字符
- 5. 從C中刪除字符串C
- 6. 刪除陣列/陣列列表中的重複字符串
- 7. 從字符串C#刪除點字符
- 8. 刪除字符串單元陣列
- 9. C++刪除C字符串/其他類型的陣列
- 10. C++從char中刪除子字符串
- 11. 從字符串c中刪除單詞#
- 12. 從字符串中刪除重音C
- 13. 從C中刪除字符串#
- 14. 從字符串中刪除字符串
- 15. 從字符串中刪除字符串
- 16. 從JSON字符串中刪除空陣列成員
- 17. 從列表中刪除字符串
- 18. 從字符串中刪除「
- 19. 從字符串中刪除
- 20. 從字符串中刪除()
- 21. 從字符串中刪除「@」
- 22. 刪除c字符串中的字符
- 23. 從C中的字符串開頭刪除子字符串
- 24. 從字符串c中刪除單引號字符C++
- 25. 從字符串列表中刪除子字符串
- 26. 從字符串中刪除字符
- 27. Python:從字符串中刪除字符
- 28. 從字符串中刪除字符
- 29. datagridview從字符串中刪除'&'字符
- 30. jQuery從字符串中刪除' - '字符
陣列可包含任何對象/類型。所以請給你的問題多一點意義。理想情況下,提供輸入數組和所需輸出數組的示例。甚至更好:展示你到目前爲止已經嘗試解決無法解決的問題。在簡單的話:[提出問題](http://msmvps.com/blogs/jon_skeet/archive/2010/08/29/writing-the-perfect-question.aspx)。 – 2011-03-31 20:51:14