java - Generic Map with Lists of Comparable -


i want map several lists, each of them composed of comparable objects, not same, there might list of doubles , list of strings, etc...

map<string, list<comparable<?>>>

unfortunately map defined above not useful because elements in each list can't compared. therefore had cheat , introduce type parameter class:

class myclass<t extends comparable<? super t>> {     map<string, list<t>> mymap; } 

this not totally correct because not lists of same type. works, thing have do type cast t when add double list of doubles or string list of strings. make sure each type gets added lists of correct type.

is there better way solve problem?

the alternative have 1 map every type of list. make code uglier , thing lists sort them , insert them db string values, therefore call tostring on comparables.

you can use list<object> make generic , purpose.
might want instance of checks specific datatypes inside list.

map<string, list<object>> map = new hashmap<>();  list<object> list;  list = new arraylist<>(arrays.aslist(new object[] { 1, 2, 3.45, "dev", 'a', true, false })); map.put("key1", list);  list = new arraylist<>(arrays.aslist(new object[] { false, 100, 5.1234f, "user", 'z', true })); map.put("key2", list);  (map.entry<string, list<object>> entry : map.entryset()) {     system.out.println(entry.getkey() + " => " + entry.getvalue()); } 

output:
key1 => [1, 2, 3.45, dev, a, true, false] key2 => [false, 100, 5.1234, user, z, true]


Comments

Popular posts from this blog

Command prompt result in label. Python 2.7 -

javascript - How do I use URL parameters to change link href on page? -

amazon web services - AWS Route53 Trying To Get Site To Resolve To www -