我怎么知道哪个参考'指的是'一个向量?

时间:2015-01-08 15:01:21

标签: java arrays vector reference tostring

所以我得到了这段代码:

import java.util.Scanner;
import java.awt.Point;
import static java.lang.System.out;
class Polygon
{
  public static void main (String[] args)
  {
      Scanner in = new Scanner (System.in);
      out.print ("the number of vertices in the polygon: ");
      int n = in.nextInt ();
      Point[] v = new Point[n];
      int x = 0;
      int y = 0;
      for (int i = 0; i < n; i++)
      {
        out.print ("vertex " + (i + 1) + ": ");
        x = in.nextInt ();
        y = in.nextInt ();
        v[i] = new Point (x, y);
      }
      out.println ();

      out.println (toString (v));
      out.println (perimeter (v));
      }

 public static double perimeter (Point[] v)
 {
   double perimeter = 0;
   for (int i = 0; i < v.length; i++)
     perimeter += v[i].distance (v[(i + 1) % v.length]);
   return perimeter;
 }

public static String toString (Point[] v)
{
  StringBuilder s = new StringBuilder ("[");
  for (int i = 0; i < v.length; i++)
     s.append ("(" + v[i].x + ", " + v[i].y + ")");
  s.append ("]");
  return s.toString ();
}
}

基本上,程序显示所有顶点的String表示和多边形的周长。

但在一个问题中,我被问到:

绘制包含多边形顶点的矢量。执行方法边界时哪些引用引用此向量以及执行方法toString时哪些引用?

所以我已经绘制了矢量,所以不用担心。但是,问题的第二部分中“哪个参考引用了这个向量”是什么意思?

1 个答案:

答案 0 :(得分:0)

它们的意思是,有多少变量指向(引用)内存中的矢量数据。例如,执行v时,变量(或“引用”)perimeter()将[s]引用到此向量