codice:
import java.util.Hashtable;

public class FraquencyTest
{
    /**
     * @param args
     */
    public static void main(String[] args)
    {
        String[] users = new String[] {"pippo1","pippo2","pippo1","pippo1","pippo1"};
        String[] roles = new String[] {"ruolo1","ruolo2","ruolo2","ruolo1"};
        Hashtable usersFrequency = valuesFrequency(users);
        Hashtable rolesFrequency = valuesFrequency(roles);
        System.out.println("pippo1 è presente " + usersFrequency.get("pippo1") + " volte");
        System.out.println("pippo2 è presente " + usersFrequency.get("pippo2") + " volte");
        System.out.println("ruolo1 è presente " + rolesFrequency.get("ruolo1") + " volte");
        System.out.println("ruolo2 è presente " + rolesFrequency.get("ruolo2") + " volte");
    }

    public static Hashtable valuesFrequency(String[] array)
    {
        Hashtable frequencyTable = new Hashtable();
        for(int i = 0; i < array.length ; i++)
        { 
            Integer currentFrequency = (Integer)frequencyTable.get(array[i]);
            Integer newValue = currentFrequency != null ? 
                    new Integer(currentFrequency.intValue() + 1) : new Integer(1);
            frequencyTable.put(array[i],newValue);
        }
        return frequencyTable;
    }

}
Ovviamente è piutosto rudimentale,l'ideale sarebbe scrivere una classe che emula le features dell'array php (che neanche conosco tutte). A quando avrò più tempo.Ciao