2012-05-26 5 views
7

Когда мы используем петлю и половину? Кроме того, должен ли кто-то кратко описать, как написать свой код?петля с половиной контролируемая

+13

Что вы даже * означаете * by "loop and a half"? Раньше я никогда не слышал об этом. –

+2

Я искал «петлю и половину» (что я тоже не знал), и придумал это: http://www.cs.duke.edu/~ola/patterns/plopd/loops.html#loop- и-половина, что объясняет, что это такое и когда мы его используем. Google - ваш лучший друг. –

+4

Кажется, кто-то помещает 'break' в середину цикла и называет его« петлями и половиной ». – Alexander

ответ

9

Вы используете петлю и половину, чтобы избежать повторения кода снаружи цикла внутри. Пример:

read a; 
while a != b do 
    stuff; 
    read a; 
end 

становится

while true do 
    read a 
    if a == b then break 
    stuff; 
end 

Теперь у меня есть только для чтения в одном месте.

+0

'while check (a, b): stuff' – Alexander

+0

@ Александр, вот как я бы написал код нормально. Лучше создать sub, чтобы избежать повторения кода. Но я часто сталкиваюсь с циклом с половиной. – stark

+0

@Alexander. Невозможно присвоить новое значение (в Java), так что, вероятно, это не очень помогает в реальных примерах, где материал, вероятно, захочет получить доступ к a. – Voo

2

Как и в стороне, я хотел бы добавить, что объем переменных (предполагается, что a является локальным переменным в этих идиомах) сводится к минимуму по сравнению с альтернативными случае, когда a все еще находится в объеме, даже после того, как в то время цикл завершается. Сведение к минимуму объема локальных переменных считается приемлемой практикой, когда это возможно (Джош Блох, Эффективная Java, п. 45).

Смежные вопросы