1 package de.juplo.kafka.wordcount.top10;
5 import java.util.Arrays;
6 import java.util.LinkedList;
10 @AllArgsConstructor(access = AccessLevel.PRIVATE)
15 private Entry[] entries = new Entry[0];
17 public Ranking add(Entry newEntry)
19 if (entries.length == 0)
21 entries = new Entry[1];
22 entries[0] = newEntry;
26 List<Entry> list = new LinkedList<>(Arrays.asList(entries));
27 for (int i = 0; i < list.size(); i++)
32 if (entry.getCounter() <= newEntry.getCounter())
34 list.add(i, newEntry);
35 for (int j = i+1; j < list.size(); j++)
38 if(entry.getWord().equals(newEntry.getWord()))
46 list = list.subList(0,10);
48 entries = list.toArray(num -> new Entry[num]);
56 public static Ranking of(Entry... entries)
58 return new Ranking(entries);