for和foreach分別用於什麼場合

2021-05-27 12:21:38 字數 1425 閱讀 7051

1樓:匿名使用者

for語句在迴圈語句中有著重要的位置,首先它計算一個初始化序列,然後當某個條件為真時,重複執行巢狀語句並計算一個迭代表示式序列;如果為 false,則退出 for迴圈, for語句常用於遍歷陣列集合。

foreach迴圈專門用來遍歷陣列和集合的元素,foreach的工作原理是逐個列舉出陣列或集合中的每一個元素,只要列舉一個元素就執行一次語句塊中的內容,在使用 foreach變數迴圈的過程中要注意不可以更改遍歷中的集合。

2樓:小花朵

for任何情況下都能用,不管陣列還是集合,但是前提是得知道元素個數才能遍歷

foreach就不需要了知道總共多少個了,而且用起來方便,不用來回從陣列或集合中提取物件,多數用於集合裡物件的遍歷和操作

3樓:匿名使用者

兩者其實是兩個語句, 不明白你為什麼要將他們放在一起比較.

for 其實是一個迴圈語句, 按照一定的條件對某個變數進行迭代, 實現迴圈或列舉每個可能的值. 當一個集合物件(包括資料)支援使用索引訪問內部的資料時, 用for可以遍歷出每個資料(實際上是使用索引迴圈訪問每個資料)

foreach 則是遍歷專用的一個關鍵字, 要求物件實現了 ienumerable 介面(即可遍歷), 通過訪問它的getenumerator()返回迭代器, 通過它來逐個遍歷資料. foreach其實是一種語法糖, 就是說編譯器在編譯的時候會將其轉換為對應的程式語句.

因此對於遍歷來說, 沒有固定的場合限制, 大部分情況下需要視情況而定. 比如你要遍歷 dictionary, 因為它不支援索引訪問, 那麼如果你需要遍歷它, 就只能用foreach. 大部分情況下foreach優先使用, 因為使用for有限制, 而且會引入新的變數造成複雜化; 而有些時候又需要使用for, 比如你還需要用對應資料的索引做運算時.

因此, 用誰不應用誰, 是要看情況的, 靈活使用.

4樓:_凍結

如果要使用迴圈變數i,就用for,

其餘一概用foreach

5樓:手機使用者

for基本上每種語言都有,就不用我解釋了吧

foreach是c#語言獨有的(也許其他語言也有,僅限我懂的語言中),和for迴圈的功能是一樣的,只是寫起來比較簡潔一些的

6樓:海牙兒

foreach需要實現遍歷介面

7樓:匿名使用者

二者有時可以互換,但要注意迴圈刪除的話只能用for語句

您和你分別用於什麼場合?

8樓:細達

老師,就要用您了

是表示一種禮貌

同時也能表示對他的尊敬

當然、、不熟悉 的人之間最好也用您

不會叫老了

只是有時候太強調尊稱會有距離感

NCS ECS和DCS分別用於發電廠什麼場合

ncs work control system 主要應用物件為升壓站內裝置。ecs electric control system 電氣裝置控制系統.主要應用物件為發電廠的開關合 分,開關狀態和發電裝置狀態的顯示 報警,模擬量的實時顯示。dcs distributed control system ...

顯示卡如圖 請問分別用於哪些型別另外它們的級別分類?還有平面設計PS這些要什麼顯示卡好呢

平面設計最好用專業級圖形顯示卡。1 當然入門級顯示卡和效能極顯示卡都能用。2 只不過越高階的顯示卡在顯示上的調節引數越多,另外可以在圖形很複雜,小元素和特效特別多的情況下,更快的重新整理影象,方便製作,提高效率。3 如果處理影象不復雜。正常排排版。一塊高檔的速度快的cpu比顯示卡要有用的多。前三個是...

職稱英語abc級分別用於哪個職稱是不是長久有效

全國專業技術人員職稱英語等 級考試是由國家人事部組織實施的一項國版家級外語考試。本考權試遵循 嚴格要求 實事求是 區別對待 逐步提高 的原則,根據英語在不同專業領域活動中的應用特點,結合專業技術人員掌握和使用英語的實際情況,對申報不同級別專業技術職務的人員的英語水平提出了不同的要求。全國專業技術人員...