Можно так. Конечно, весь этот алгоритм можно было упростить, но тогда тот, кто, возможно, станет проверять задание, может его не принять:
import java.util.*;
public class Main
{
public static void main (String[] args) {
int num = 10;
ArrayList arr = new ArrayList ();
Random rn = new Random ();
for (int i = 0; i < num; i++) arr.add (rn.nextInt (10));
System.out.println (arr.toString ());
int max = 1;
int elm = 0;
int maxl = 0;
int cnt = 0;
boolean mulf = false;
for (int i = 0; i < arr.size (); i++) {
cnt = 1;
for (int j = i + 1; j < arr.size (); j++) {
if (arr.get (i) == arr.get (j)) {
cnt++;
elm = arr.get (i);
}
}
if (cnt > max) {
max = cnt;
maxl = elm;
} else if (cnt == max && max > 1) mulf = true;
}
if (max > 1 && !mulf)
System.out.println (String.format ("Элемент = %d, количество = %d", maxl, max));
else
System.out.println (String.format ("Всех элементов массива по одному либо несколько в одинаковом количестве"));