Vale, te entiendo. Creo que te podría valer algo así:
Código:
public static void main(String[] args) {
ArrayList <ColorCantidad> colorCantidadList = new <ColorCantidad> ();
boolean encontrado;
for (int i = 0; i < args.length; i++){
encontrado = false;
for (ColorCantidad colorCantidad : colorCantidadList){
if (colorCantidad.color.equals(args[i])){
colorCantidad.cantidad++;
encontrado = true;
}
}
if (!encontrado)
colorCantidadList.add(new ColorCantidad(args[i]));
}
// Imprime lo que quieras a partir de aquí, usando los contadores. Por ejemplo:
for (ColorCantidad colorCantidad : colorCantidadList)
System.out.println ("Color: " + colorCantidad.color + " | Apariciones: " + colorCantidad.cantidad);
}
public class ColorCantidad{
string color;
int cantidad;
public ColorCantidad (string color){
this.color = color;
cantidad = 0;
}
}