-2

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

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.");
            }
        }

    }
}

它会打印出用户创建的数组,但在那之后我不知道为什么它不会打印出最后一部分。

4

2 回答 2

4

您需要FreqOfInt在打印之前致电。

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

于 2013-05-06T22:33:29.647 回答
3

main中,最后一个方法调用是 to printArray,但你从不调用FreqOfInt。这就是为什么该输出不显示的原因。

调用后调用它printArray

于 2013-05-06T22:33:03.890 回答