ähnliche Frage: How to make HashMap work with Arrays as key?Wie TreeMap mit Arrays als Schlüssel arbeiten? siehe
Aber ich brauche TreeMap wie ((int key1, int key2) -> String)
, zu vergleichen key1
dann key2
zu vergleichen.
Meine Lösung ist:
Map<int[], String> map = new TreeMap<>(Comparator.
<int[]>comparingInt(key -> key[0]).thenComparingInt(key -> key[1]));
Aber wenn ich ((int key1, int key2, int key3) -> String
müssen, muss ich mehr schreiben.
Gibt es eine Möglichkeit, den Vergleicher für Arrays mit beliebiger Länge zu generieren?
wahrscheinlich der beste Weg wäre, nur einen 'Comparator' zu schreiben, die genau das tut. Ich bezweifle, dass das vernünftig und verständlicherweise mit lambdas gemacht werden könnte. Wenn Sie es mit einem Lambda tun können, gehen Sie dafür, aber persönlich würde ich nur normales Java verwenden. – Obicere