2016-04-22 2 views
-1

Я пытаюсь напечатать массив, который я создал в классе Lab12, с использованием вложенных циклов и методов getX() и getY(), которые я создал в классе MyPoint. Однако мой цикл просто дает мне ссылку. Как я могу получить значения для печатиПечать двухмерного массива координат в java

pt[0][0] = (0.5, 1.2) 

pt[0][1] = (0.0, 3.14) 

pt[0][2] = (15.0, 27.5) 

pt[1][0] = (6.6, 7.7) 


pt[1][1] = (1.2, 2.1) 

pt[1][2] = (12.0, 127.0) 
public class MyPoint { 

    private double x; 
    private double y; 


    public MyPoint(double x, double y) { 
     this.x = x; 
     this.y = y; 
    } 

    public double getX() { 
     return x; 
    } 

    public double getY() { 
     return y; 
    } 

} 
public class Lab12 { 

    public static void main(String[] args) { 
     // TODO Auto-generated method stub 

    MyPoint [][]pointMatrix = { 
       {new MyPoint(0.5,1.2), new MyPoint(0.0,3.14), new MyPoint(15.0,27.5)}, 
       {new MyPoint(6.6,7.7), new MyPoint(1.2,2.1), new MyPoint(12.0,127.0)} 
      }; 

     for (int i=0; i<pointMatrix.length; i++) { 
       for (int j=0; j<pointMatrix[i].length; j++){ 
       System.out.print(pointMatrix[i][j] + " "); 
       } 
       System.out.println(); 
      } 

    } 
+1

вы должны реализовать метод 'toString' в классе MyPoint –

+0

, добавив другой метод в этот класс, кроме моих инструментов ctions, к сожалению, я не могу это сделать :( – Newman

ответ

1

Самый лучший вариант, как уже упоминалось @Lashane, является реализация toString() метод:

public class MyPoint { 
    // ... 
    @Override 
    public String toString() { 
     return "(" + x + ", " + y + ")"; 
    } 
} 

Внутри вашего цикла:

System.out.println("pt[" + i + "][" + j + "] = " + pointMatrix[i][j]); 
+0

Мои инструкции говорят, что в классе MyPoint я могу использовать только методы getX и getY – Newman

Смежные вопросы