试图打印数组中整数的频率

时间:2013-05-06 22:30:57

标签: java

我正在尝试打印出数组中每个整数的频率

import java.util.*;
public class NumFrequency {

    public static void main(String [] args) {

      Scanner input = new Scanner(System.in);

      System.out.println("Enter the amount of numbers your going to input, up to 50");
      int num = input.nextInt();
      int array[] = new int[num];

      System.out.println("Enter the "+ num + " numbers now.");

      for (int i=0 ; i<array.length; i++) {
          array[i] = input.nextInt();
      }

      System.out.println("array created");
      printArray(array);


    }

    public static void printArray(int arr[]){
        int n = arr.length;

        for (int i=0; i<n; i++) {
            System.out.print(arr[i]+" ");
        }
    }
    private static int[] intFreqArray = new int[51];
    public static void FreqOfInt(int[] array, int num) {
        for (int eachInt : array) {
            intFreqArray[eachInt]++;
        }

        for (int m = 0; m<intFreqArray.length; m++) {
            if (intFreqArray[m] > 1) {
                System.out.println(m+ " occurs " + intFreqArray[m] + " times.");
            }
        }

    }
}

它会打印出用户创建的数组,但之后没有任何内容我输掉了为什么它不会打印出最后一部分。

2 个答案:

答案 0 :(得分:4)

您需要在打印前致电FreqOfInt

请注意,我们通常使用小写字母表示Java方法的名称。

答案 1 :(得分:3)

main中,最后一次方法调用是printArray,但您永远不会调用FreqOfInt。这就是输出没有出现的原因。

致电printArray后致电。