Составить 2d массив списка точек

1

У меня есть метод, который добавляет 2d точек в список, но я их должен быть в формате 2d, например: [3,2]. Прямо сейчас он дает только [3,0,1,3], которые представляют собой разные точки, но они составляют лишь половину этих точек. Это мой инициализированный список: List<Integer> neighbors = new ArrayList<Integer>(); , и вот выход, 3,0,1,3. Это должно быть [3,1], [0,1] и так далее. Как я могу это исправить? Вот мой код для этого:

public List<Integer> getNeighbors(int[][] boards, int x, int y) {
    //the list of neighbor nodes
    ArrayList<Point> neighbors = new ArrayList<Point>();
    if (x > 0){
        neighbors.add(boards[x-1][ y]);
    }
    if (y > 0){
        neighbors.add(boards[x][y-1]);
    }
    if (x < q){
        neighbors.add(boards[x+1][y]);
    }
    if (y < q){
        neighbors.add(boards[x][y+1]);
    }
    return neighbors;
}
Теги:
arrays
list

1 ответ

5
Лучший ответ

Либо используйте
List<Point> neighbors = ArrayList<Point>()
или использовать
ArrayList<YourClass>
где у YourClass два поля int.

  • 0
    так, где я мог бы изменить это, и я должен изменить то, что я делаю в методе, чтобы это работало?
  • 0
    Везде, где это необходимо.
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню