Array.Reverse()方法如何在沒有任何賦值的情況下顛倒單詞數組?Array.Reverse()如何反轉字符串而不分配?
回答
該方法修改數組本身,所以你可以馬上使用它的反轉狀態;沒有必要返回數組的一個副本來分配回您的現有變量。數組是參考類型,因此可以在不重新分配的情況下對其內容進行修改。
查看MSDN entry for Array.Reverse()
和arrays in the C# programming guide。
它在哪裏得到存儲,而倒車發生。 – syaur
在顛倒過程中不太可能完整地存儲。想象一下這個詞在一張紙上,你只有一把剪刀。你會如何反轉一個詞? –
@ user1070662,數組本身存儲在堆上,但我們不用擔心這一點。該數組是一個引用類型。所有你傳入的方法是*參考*到數組的位置。你傳遞一個地址。該代碼然後作用於該地址處的對象(您的數組)。這就像你的房子專業繪畫。你不把你的房子送給畫家,你只需告訴他你的房子在哪裏。你的房子塗上了地方。同樣,該陣列在適當位置顛倒過來。 –
核心方法:
while (num < num2)
{
object obj3 = array.GetValue(num);
array.SetValue(array.GetValue(num2), num);
array.SetValue(obj3, num2);
num++;
num2--;
}
兩種方式交換你的RAM作爲一個巨大的箱體一大堆抽屜的
對於OP來說,這是一個初學者編程的問題,這引發了更多的問題。每一步的解釋都會讓這個答案更有價值。 –
思考。假設每個抽屜可以放一個字母。如果你想扭轉你的話,你會在你的櫥櫃中的另一個位置製作每封信的副本,還是隻是在必要時將信件從原始位置交換出去? Array.Reverse()
使用第二種方法。
- 1. 字符串反轉部分
- 2. 如何將數字反轉爲整數而不是字符串?
- 3. 如何反轉字符串
- 4. 如何反轉字符串
- 5. 如何在Python中反轉字符串列表而不反轉()或[:: - 1]
- 6. 如何在不分配內存的情況下反轉字符串
- 7. 如何反轉Java字符串的字
- 8. 反轉裝配中的字符串(TASM)
- 9. 反轉字符串
- 10. 反轉字符串
- 11. c中字符串的反轉部分#
- 12. 如何正確反轉字符串?
- 13. 如何「反轉」字符串的值?
- 14. 如何反轉義查詢字符串
- 15. 錯誤,而分配字符串uilabel swift
- 16. 如何在裝配中反轉和修改我的字符串?
- 17. 如何在C++中分配類型char(不是字符串)時轉義字符
- 18. 分割而佔轉義字符的字符串用分號
- 19. 如何將任何字符串轉換爲按位反轉的ASCII字符串?
- 20. 在字符串上拆分字符串而不是字符
- 21. 反向字符串的整數,而不扭轉整數本身
- 22. Php拆分字符串轉義配額
- 23. 反轉字符串,不起作用
- 24. 手動反轉字符串不工作
- 25. arraylist字符串反轉
- 26. C反轉字符串
- 27. C++反轉字符串
- 28. 如何用字符串分割字符串而不丟失任何文本?
- 29. 字符串分配
- 30. 如何將字符串數組轉換爲字符串而不會轉義任何字符?
你知道關於指針嗎?我知道C#沒有明確指向,但是你知道它背後的概念嗎? –
用手在紙上解決,一步一步展示你的作品(用文字或圖片,以你最容易的爲準)。有點像你會遇到一個數學問題,除了你或多或少地在紙上執行一個程序。這種棘手的數組邏輯在使用該策略時更容易理解。 –
這可能值得在這裏閱讀:http://www.codeproject.com/KB/cs/csharpstringreversal.aspx –