Don't use ArrayList<Integer[]>
because ArrayList
itself is a container to hold your one dimensional line numbers
, instead use like below:
TreeMap<Integer, ArrayList<Integer>> clusterMap = new TreeMap<Integer, ArrayList<Integer>>();
ArrayList
will contain the line numbers of a given number in the file.
suppose current number is : num
So check for the presence in the clusterMap
:
if(clusterMap.containsKey(num )){
clusterMap.get(num).add(lineNumber);
}
else{
ArrayList<Integer> list = new ArrayList<>();
list.add(lineNumber);
clusterMap.put(num, list);
}