如何打印直方图?

时间:2013-11-24 18:01:11

标签: java arrays histogram

我正在尝试打印直方图,但是在主要部分拼凑它时遇到了麻烦。我是阵列的新手,所以如果有人能帮忙解决这个问题,我们将不胜感激。以下是我的方法:

public static void main(String[] args) {
  randomIntArray(5);
}

public static int randomInt(int low, int high){
  int x= (int)(Math.random ()*high)+low;
  return x;       
}

public static int[] randomIntArray(int n){
  int[] a = new int [n];
  for (int i = 0;i<a.length;i++){
    a[i]=randomInt (0,100);
  }

  System.out.println(printHist(a));
  return a;
}

public static int[] printHist(int[]a){
  int[] k = new int[11];
  int i=0;
  while (i<=10) { 
    int counter = 0;
    int h=0;
    while(h<a.length) {
      if (a[h] == i) {
        counter++;
        h++;
      }
      h++;
    }

    k[i] = counter;
    i++;
  }

  return k;
}

这就是我得到的输出。

[I@fb53f6

我是否需要重新考虑我这样做的方式,还是有一个简单的解决方法?

1 个答案:

答案 0 :(得分:0)

System.out.println(arrayObject)没有按照您的想法行事。

尝试使用此相关问题中的一个解决方案:What's the simplest way to print a Java array? - 例如Arrays.toString(arrayObject)