繁体   English   中英

如何用整数打印点数组?

[英]How do I print the point array with integers?

//imports and class block trimmed
public static void main(String[] args) {

    Point[] xy = new Point[100];

    for (int i = 0; i < xy.length; i++) {

        Point c = new Point((int) (Math.random() * 100),
                (int) (Math.random() * 100));

        xy[i] = c;
    }

    Arrays.sort(xy);

    for (int j = 0; j < xy.length; j++) {
        System.out.println(xy[j]);
    }

}

我得到100条类似“ Point @ d46ca6”的语句的输出。 我需要它来显示整数。 我还有另外两个名为Point和CompareY的类。 如何将xy中的数组项打印为整数?

覆盖Point类中的toString()方法:

class Point {
    // your code ...
    @Override
    public String toString() {
        return "(" + this.x + ", " + this.y + ")";
    }
}

您应该使用Point类的toString()方法很好地打印数字:

System.out.println(xy[j].toString());

如果这是您自己的Point类,则可以始终(并且应该应该)向toString()编写重写,以将它们很好地打印出来。 (请参阅nem的帖子)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM