Я хочу создать простую 2D гистограмму из массива точек.
Класс очков
import java.util.ArrayList;
import java.util.List;
public class Points {
static List<List<Integer>> histogram = new ArrayList<List<Integer>>();
public static void createHistogram(List<Point> point,int max) {
for(int x = 0; x < max; x++) {
histogram.add(new ArrayList<Integer>());
for(int y = 0; y < max; y++) {
histogram.get(x).add(0);
System.out.print((histogram.get(x).get(y)) +" ");
}
System.out.println();
}
for(int x = 0; x < point.size(); x++)
histogram.get(point.get(x).x).get(point.get(x).y)++;
}
public static void main(String[] args) {
List<Point> points = new ArrayList<Point>();
points.add(new Point(0,10));
points.add(new Point(1,2));
points.add(new Point(2,5));
points.add(new Point(1,2));
createHistogram(points,10);
}
}
Класс точек
public class Point{
public int x = 0;
public int y = 0;
Point(int x, int y){
this.x = x;
this.y = y;
}
}
Я получаю "Неверный аргумент дляОперация ++ / - "ошибка при попытке увеличить значение гистограммы.Это почему?Когда я печатаю значение «histogram.get (point.get (x) .x) .get (point.get (x) .y)», проблема не возникает.Почему изменение его значения не допускается?Как я могу это исправить?