Читайте также:
|
|
Следующий код делает ту же самую работу, что и два рассмотренных нами ранее цикла:
public String speak() { StringBuffer speech = new StringBuffer(); int i = 0; do { speech.append("hello"); i++; } while (i < 3); return speech.toString(); } |
Общий синтаксис циклов do:
do { выражение (выражения) } while (булево выражение); |
Цикл do фактически такой же, что и цикл while, за исключением того, что он проверяет свое булево выражение после каждого выполнения тела цикла. Что происходит в цикле while, если выражение имеет значение false при первой же проверке? Цикл не будет выполнен ни разу. Цикл do гарантирует, что цикл выполнится хотя бы один раз. Иногда это различие может быть важным.
Перед завершением работы с циклами рассмотрим два выражения ветвления, которые могут быть полезны. Мы уже встречались с выражением break при работе с выражениями switch. В циклах они производят такой же эффект - останавливают цикл. Выражение continue, с другой стороны, останавливает текущую итерацию цикла и сразу выполняется следующая итерация. Вот тривиальный пример:
for (int i = 0; i < 3; i++) { if (i < 2) { System.out.println("Haven't hit 2 yet..."); continue; } if (i == 2) { System.out.println("Hit 2..."); break; } } |
Если вы поместите этот код в ваш метод main() и запустите его, то получите следующие результаты:
Haven't hit 2 yet... Haven't hit 2 yet... Hit 2... |
В первых двух прохождениях цикла переменная i меньше значения 2, поэтому выводится сообщение "Haven't hit 2 yet...", затем выполняется выражение continue, которое вызывает следующую итерацию цикла. Когда i равно 2, код в первом выражении if не выполняется. Мы попадаем во второй if, отображаем сообщение "Hit 2...", затем прекращаем (break) цикл.
Рассмотрев в следующем разделе обработку коллекций, мы усложним поведение.
Коллекции
Знакомство с коллекциями
Большая часть реальных приложений имеет дело с коллекциями чего-либо (файлов, переменных, строк файлов и т.д.). Часто объектно-ориентированные программы работают с коллекциями объектов. Язык Java имеет усовершенствованную библиотеку Collections Framework, которая позволяет вам создавать и управлять коллекциями объектов различных типов. Эта библиотека сама может занять целое руководство, поэтому здесь мы не будем рассматривать ее всю. Вместо этого мы рассмотрим одну очень широко используемую коллекцию и некоторые способы ее применения. Эти способы подходят для большинства коллекций, доступных в языке Java.
Дата добавления: 2015-09-11; просмотров: 14 | Поможем написать вашу работу | Нарушение авторских прав |