Yes it's set of arrays. Now how could I read this array
I was just wondering that when I print it as toString it prints me an array, when I try to tokenizer it, which could be one way to use this non-array array, it thing just messes thing up.
Oh and yes it is gibberish if it isn't meant for human to understand
There's no "non-array array"--it's an array. You have a set of arrays. Did you see Christophe's answer? Get the array from the key set. Then do whatever you want with it.
(And it *is* designed for a human to read; see these examples--sorry I can't find the correct reference off the top of my head.)
On a side note, it is a bad idea to use any highly mutable object (like Lists, Sets, Collections) as keys of a Map. The return values of the methods used to look them up again (hashCode + equals for (Linked)HashMap, compareTo / Comparator.compare for TreeMap) are very likely to change, therefore making it impossible to use methods like get, containsKey and other similar methods. It even allows you to use the very same object as two different keys. For instance: