14.02.2017 Views

. Стиллмен, Дж. Грин - Изучаем C#, 2-е издание

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

любит<strong>е</strong> ли вы стоять в оч<strong>е</strong>р<strong>е</strong>ди?<br />

Зб<strong>е</strong>нья сл<strong>е</strong>дуют 6 порядк<strong>е</strong> их поступл<strong>е</strong>ния<br />

О ч <strong>е</strong> р <strong>е</strong> д ь отл ича<strong>е</strong>тся о т сп и ска т<strong>е</strong>м , ч т о вы н<strong>е</strong> м ож <strong>е</strong>т<strong>е</strong> добавлять и удал<br />

я ть эл<strong>е</strong>м <strong>е</strong>нты с п р о и зволь н ы м инд<strong>е</strong>ксом . В ы д о б а в л я <strong>е</strong> т <strong>е</strong> о б ъ <strong>е</strong> к т<br />

в о ч <strong>е</strong> р <strong>е</strong> д ь (e n q u e u e ) и у д а л я <strong>е</strong> т <strong>е</strong> и з н <strong>е</strong> <strong>е</strong> (d e q u e u e ). В посл<strong>е</strong>дн<strong>е</strong>м случа<strong>е</strong><br />

оста вш и <strong>е</strong>ся о б ъ <strong>е</strong> кты сд вига ю тся на о д и н эл<strong>е</strong>м<strong>е</strong>нт.<br />

Созда<strong>е</strong>м<br />

оч<strong>е</strong>р<strong>е</strong>дь<br />

строк.<br />

М<strong>е</strong>тод Р<strong>е</strong><strong>е</strong>к()<br />

позволя<strong>е</strong>т выд<strong>е</strong>лить<br />

п<strong>е</strong>рвый<br />

эл<strong>е</strong>м<strong>е</strong>нт<br />

в оч<strong>е</strong>р<strong>е</strong>ди, н<strong>е</strong><br />

удаляя <strong>е</strong>го.<br />

f^emod CleavQ<br />

удаля<strong>е</strong>т из<br />

оч<strong>е</strong>р<strong>е</strong>ди вс<strong>е</strong><br />

объ<strong>е</strong>кты.<br />

Queue myQueue = new Queue();<br />

myQueue.Enqueue("first in line");<br />

myQueue.Enqueue("second in line");<br />

myQueue.Enqueue("third in line");<br />

myQueue.Enqueue("last in line");<br />

string takeALook = myQueue.Peek() ;@<br />

s t r i n g g e t F i r s t = m y Q u e u e . D e q u e u e ()<br />

string getNext = myQueue.Dequeue<br />

int howMany = myQueue.Count<br />

.....................................................................<br />

myQueue.Clear();<br />

В оч<strong>е</strong>р<strong>е</strong>дь добавляются ч<strong>е</strong>тыр<strong>е</strong><br />

эл<strong>е</strong>м<strong>е</strong>нта.<br />

П<strong>е</strong>рвый м<strong>е</strong>тод DequeueO<br />

MessageBox.Show("Peek() returned: " + t a k e A L o o k + " \ n "<br />

+<br />

+<br />

"The first Dequeue 0 returned:<br />

"The second Dequeue 0 returned:<br />

‘ -I- g e t F i r s t +<br />

" + g e t N e x t +<br />

+ "Count before Clear 0 was " + h o w M a n y + " \ n "<br />

+ "Count after Clear 0 is now " + myQueue.Count);<br />

<strong>е</strong>го.<br />

' \ n ' ‘<br />

' \ n "<br />

Свойство Count возвраща<strong>е</strong>т<br />

число эл<strong>е</strong>м<strong>е</strong>нтов в оч<strong>е</strong>р<strong>е</strong>ди.<br />

В<br />

уж <strong>е</strong><br />

Объ<strong>е</strong>кты<br />

ждут сво<strong>е</strong>й<br />

оч<strong>е</strong>р<strong>е</strong>ди.<br />

Р<strong>е</strong><strong>е</strong>кО returned; first in tine (I)<br />

The first DequeueO returned; first in lin e (i)<br />

The second DequeueO returned: second in tin e @<br />

C ount before ClearO was 2 ®<br />

C ount after ClearO is now 0 0<br />

390 глава 8

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!