Zagadka z Iteratorem

Ciekawa zagadka znaleziona w sieci. Należy tak poprawić poniższy kod, aby na ekranie wyświetlił się napis Hello World. Oczywiście wyjątek ConcurrentModificationException (ani żaden inny) nie może się pojawić. Pozostałe obostrzenia to:

  • w żaden sposób nie wolno modyfikować kodu poza sekcją FIXME
  • nie wolno użyć refleksji
  • cały poniższy kod musi się wykonać; nie można użyć System.exit(0) lub return

Powodzenia:)

8 komentarzy to “Zagadka z Iteratorem”

  • dembol pisze:

  • Barista pisze:

    Ciekawe i poprawne rozwiązanie:) Może pojawi się jakaś odpowiedź bez użycia metod: clear(), trimToSize(), ensureCapacity(int minCapacity) lub remove(int index)?

  • Jarek pisze:

    A zwykle pirntln(„Hello World”) nie moze byc? Nigdzie nie jest napisane, ze trzeba uzyc tego iteratora czy listy 🙂

    • Barista pisze:

      Niestety nie. Tak jak jest napisane, musi się wykonać cały zamieszczony kod. Można dodać coś od siebie tylko w sekcji FIXME. Jeśli umieścimy tam System.out.println("Hello World");, to:

      • niestety poleci wyjątek java.util.ConcurrentModificationException – a nie powinien
      • wyświetli się HelloHello World – a powinno tylko Hello World

      Kombinuj dalej:)

  • Jarek pisze:

    Nie umiem czytać. Cały zamieszczony kod ma się wykonać, eh

  • Kerai pisze:

  • Dant pisze:

Leave a Reply

Szukaj
Facebook
Prenumerata

Podaj adres email aby otrzymywać info o nowych wpisach.

Kategorie