Должна быть некоторая строка, которая будет оттянута между Windows Developer и Веб-разработчиком, где любой может использовать Платформу.NET. Система. Сеть очень полезна, если Вы делаете веб-разработку, а также знаете, как.NET взаимодействует с IIS, в то время как это может быть не важно для Разработчика, который делает Приложения Windows и Консольные приложения.
Они начинают размываться время от времени, таким образом, разработчик должен попытаться видеть, где они хотят быть в стеке, например, сделать они хотят сделать все это как в среде малого бизнеса или сфокусироваться главным образом на разработке как более крупные магазины, может сделать.
Первый из двух заданных вами - классический цикл C для
. Это дает программисту контроль над критериями итерации и позволяет выполнять три операции: инициализацию; петлевой тест; выражение приращения. Хотя он часто используется для постепенного повторения для заданного количества попыток, как в вашем примере:
for (int i=0; i < N : i++)
В коде гораздо больше примеров, где для
использовалось для итерации по коллекциям:
for (Iterator iter = myList.iterator(); iter.hasNext();)
To облегчить укладку второго типа (где третье предложение часто не использовалось), и чтобы дополнить Generics , представленные в Java 1.5, был представлен второй из двух ваших примеров - расширенный цикл for или цикл for-each
.
Второй используется с массивами и универсальными коллекциями. См. Эту документацию . Он позволяет выполнять итерацию по общей коллекции, в которой вам известен тип Collection
, без необходимости приводить результат Iterator.next ()
к известному типу.
Сравните:
for(Iterator iter = myList.iterator; iter.hasNext() ; ) {
String myStr = (String) iter.next();
//...do something with myStr
}
с
for (String myStr : myList) {
//...do something with myStr
}
Этот «новый стиль» цикла for также может использоваться с массивами:
String[] strArray= ...
for (String myStr : strArray) {
//...do something with myStr
}
Цикл for in в основном приятен на вид, что упрощает чтение кода. (Если вы произносите: как «in»).
Я использую второй тип почти исключительно в своем собственном коде всякий раз, когда я повторяю список или массив.
Я все еще использую обычный цикл for при работе с в основном математический код, или когда мне нужно «i», чтобы узнать, сколько раз я зацикливался.
Он называется для каждого цикла, и в основном его можно использовать со всем, что реализует
java.lang.Iterable
Универсальные коллекции, реализующие этот интерфейс, но вы можете создать свой собственный класс, который также подходит. Это очень упрощает работу со всем в списке / коллекции, хотя обратная сторона заключается в том, что вы не получаете явного доступа к текущему номеру в списке, как в традиционном цикле. Есть некоторые дополнительные накладные расходы, связанные с этим типом цикла по сравнению с традиционными циклами из-за вызовов классов итераторов.
Он используется для перебора всего массива или Iterable коллекции. Он в основном заменяет:
for(int i=0; i<N.length; i++)
И может использоваться с Generics, что довольно круто