Warning
This page is located in archive.

Čtyři

Napište třídu YoungReader, která je podtypem java.io.Reader. Její metody by měly vracet data získaná z readeru z konstruktoru s následujícími rozdíly (v případě zájmu je k dispozici formální popis):

  • každé i (resp. I) by měly změnit na y (resp. Y),
  • každé kv (resp. Kv, kV a KV) by měly změnit na q (resp. Q) a
  • mezery by měly vynechávat a písmena následující bezprostředně za mezerami kapitalizovat (např. pomocí metody Character.toUpperCase).

Všechny konverze musíte provádět “za chodu”, tzn. nesmíte vnitřní reader celý načíst, zkonvertovat a posléze vrátit.

class YoungReader extends java.io.Reader {
 
    YoungReader(java.io.Reader inner) {
        /* vas kod */
    }
 
    /* vase atributy a metody */
}

Implementaci metod mark a reset můžete vynechat, markSupported by v takovém případě měla vracet false.

Odevzdávaný kód dejte do souboru homeworks/Homework4.java. Termín odevzdání 24. 3. 1:59 ráno (čas podle serveru s repozitáři).

Pokud se o třídě Reader chcete dozvědět víc, můžete si přečíst např. http://java.sun.com/developer/technicalArticles/Streams/ProgIOStreams.

~~DISCUSSION:closed~~

courses/a7b36omo/hw/04/start.txt · Last modified: 2014/12/03 14:04 (external edit)