🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.java
Article #153417

Re: Taka kolekcja/kontener: Vector i Map

#153417
From: Jacek Czerwinski
Date: Sat, 05 May 2012 09:36
34 lines
2482 bytes
W dniu 2012-05-05 11:15, Arivald pisze:
> W dniu 2012-05-05 10:50, Jacek Czerwinski pisze:

> Utwórz nowy obiekt, implementujący Map<String, T> i List<T>. Wewnątrz
> umieść prywatne Map i List, dowolnych typów (np HashMap i LinkedList).
> Eclipse Ci wygeneruje listę metod do zaimplementowania, po prostu
> wydeleguj implementację do Mapy i Listy, pilnując wewnętrznych zależności.
>
> Po prostu ten sam obiekt (referencję do niego) trzymaj jednocześnie w
> Liście i Mapie.

Idę tą ścieżką (akurat odziedziczyłem po (Hash)Map z pewnych względów, 
również mniejsza ilośc metod do zaimplementowania). List siedzi w 
środku i referencje trzymam 2x.
Wchodząc w las, zaczyna lekko przeszkadzać, dwa odpowiedniki np. 'put' 
itd. Rzecz w tym, że zewnętrzny interface jaki implementuje byłby nieco 
nadmiarowy. Więc Zewnętrznie nie trzymam interfejsu List, jedyne co mam 
podobne to
putAt(int pos, String key, T y)

być może przyjdzie potrzeba na toArray i podobne metody listowe, ale na 
razie nie.

>
>  > mentalnie pożegnałem się z inteligentnym put(T) i będzie put(String,T)
>
> To możesz załatwić wzorcem strategii, tzn dodatkowy obiekt (może być
> singleton czy statyczne klasa), który dostaje obiekt T i zwraca string
> który będzie kluczem mapy.
> Strategia może być jako typ generyka (ListMap<T, , Strategy>).
Na pewno jakaś wskazówka, ale na przyszłość.

Szkoda, że w czystej javie nie można podać "pola" (jako ktoś kibicował 
JPA2 Criteria to wie)
Technical Details
Message-ID: <jo2sap$rja$1@node2.news.atman.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail
References: <jo2kpg$jrp$1@node2.news.atman.pl> <jo2pjs$onr$1@node2.news.atman.pl> <jo2r85$pl5$1@news.dialog.net.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail
From: Jacek Czerwinski <x@y.z.pl>
Newsgroups: pl.comp.lang.java
Subject: Re: Taka kolekcja/kontener: Vector i Map
Date: Sat, 05 May 2012 11:36:24 +0200
Organization: ATMAN - ATM S.A.
Lines: 35
Message-ID: <jo2sap$rja$1@node2.news.atman.pl>
References: <jo2kpg$jrp$1@node2.news.atman.pl> <jo2pjs$onr$1@node2.news.atman.pl> <jo2r85$pl5$1@news.dialog.net.pl>
NNTP-Posting-Host: 77-255-113-153.adsl.inetia.pl
Mime-Version: 1.0
X-Trace: node2.news.atman.pl 1336210585 28266 77.255.113.153 (5 May 2012 09:36:25 GMT)
X-Complaints-To: usenet@atman.pl
NNTP-Posting-Date: Sat, 5 May 2012 09:36:25 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows NT 6.0; rv:12.0) Gecko/20120428 Thunderbird/12.0.1
In-Reply-To: <jo2r85$pl5$1@news.dialog.net.pl>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit