¿Cómo comparar elementos en una matriz de cadenas en java?

Estoy tratando de encontrar palabras duplicadas en una cadena de cadenas.

Aquí está mi código para la comparación:

   for ( int j = 0 ; j < wordCount ; j++)
   {    
       for (int i = wordCount-1 ; i > j ; i--)
       {       
           if (stringArray[i].compareTo(stringArray[j]) == 0 && i!=j)
           {
               //duplicate
               duplicates++;
           }
       }
   }
   wordCount -= duplicates;
   System.out.print("\nNumber of words, not including duplicates: " + wordCount);

en la sentencia if, diceNullPointerException. ¿Qué significa esto? ¿Hay una mejor manera de hacer esto? Traté simplemente de hacer

if (stringArray[i] == stringArray[j] && i!=j)

pero eso seguía dándome respuestas equivocadas.

Respuestas a la pregunta(5)

Su respuesta a la pregunta