本文說明在兩個迴圈結構之間進行轉換的快速動作重構。 其中包括您可能會想要在程式碼中於 for 迴圈與 foreach 陳述式之間切換的原因。
將 for 迴圈轉換成 foreach 陳述式
若您的程式碼中有 for 迴圈,您可以使用此重構,將其轉換為 foreach 陳述式。
此重構適用於:
C#
Visual Basic
注意
[轉換為 foreach] 快速動作重構僅適用於包含下列所有三個組件的 for 迴圈:初始設定式、條件及迭代器。
轉換的理由
除了當作用來存取項目的索引之外,您不會在迴圈內使用區域迴圈變數。
您想要簡化程式碼,以及降低初始設定式、條件及迭代器區段中發生邏輯錯誤的可能性。
如何使用
將插入號放在
for關鍵字中。按 Ctrl+. 或按一下程式碼檔案邊界的螺絲起子
圖示。
選取 [轉換為 'foreach']。 或選取 [預覽變更] 以開啟 [預覽變更] 對話方塊,然後選取 [套用]。
將 foreach 陳述式轉換成 for 迴圈
如果您的程式碼中有 foreach (C#) 或 For Each...Next (Visual Basic) 陳述式,則可以使用此重構將其轉換為 for 迴圈。
此重構適用於:
C#
Visual Basic
轉換的理由
除了存取項目之外,您想要在迴圈內使用本機迴圈變數來進行其他工作。
您透過多維度陣列反覆運算,並想要陣列元素的更多控制權。
如何使用
將插入號放在
foreach或For Each關鍵字中。按 Ctrl+. 或按一下程式碼檔案邊界的螺絲起子
圖示。
選取 [轉換為 'for']。 或選取 [預覽變更] 以開啟 [預覽變更] 對話方塊,然後選取 [套用]。
由於重構採用了新的反覆運算計數變數,因此 [重新命名] 方塊會顯示在編輯器的右上角。 若您想為變數選擇其他名稱,請鍵入名稱後按 Enter 鍵或選取 [重新命名] 方塊中的 [套用]。 若您不想選擇新名稱,則按 Esc 鍵或選取 [套用] 關閉 [重新命名] 方塊。
注意
就 C# 而言,這些重構所產生的程式碼會針對集合中項目的類型,使用明確的類型或 var。 所產生程式碼中的類型 (不論是明確還是隱含) 會取決於範圍內的程式碼樣式設定。 設定這些特定程式碼樣式設定時,是在電腦層級的下列位置底下設定:[工具] >[選項] > [文字編輯器] > [C#] > [程式碼樣式] > [一般] > [var' 喜歡設定],或在 EditorConfig 檔案中的方案層級設定。 如果您在 [選項] 中變更某個程式碼樣式,請重新開啟程式碼檔案以讓變更生效。