Mensagem atraves de uma list

boas… tou com o seguinte problema.
Estou a tentar mandar mensagem para uma determinada pessoa… estou a usar uma list em que me insere os nomes nessa lista, e eu gostava quando clicasse no nome ele me enviase só pra esse nome. é que o codigo que vou mostrar em seguida está me a mandar pra todos os nomes k aparecem na lista

[code] private void btnEnviaMensagemActionPerformed(java.awt.event.ActionEvent evt) {
try
{
// TODO add your handling code here:

        utilizador.EnviaListaTXT(txtDigitarMensagem.getText()+"\n");
        txtDigitarMensagem.setText("");
    }
    catch (Exception ex)
    {
        Logger.getLogger(Cliente.class.getName()).log(Level.SEVERE, null, ex);
    }[/code]

este código é quando eu carrego no botao enviar a mensagem

em seguida mostro o restante processo de envio, em que neste caso está me a mandar pra todos que aparecem na lista

 public void getLista() throws Exception
    {

        // ## Configuration Options ##
        String Lista = "";


        URL urlServer = new URL("http://xxxxxxx="+IPCliente);
	BufferedReader in = new BufferedReader(	new InputStreamReader(urlServer.openStream()));
	String inputLine;

	while ((inputLine = in.readLine()) != null)
        {
            System.out.println(inputLine);
            Lista = Lista + inputLine;
        }
	in.close();
        //System.out.println("Utilizadores - Lista recebida");
        //System.out.println(List);


        //Dividir String para ArrayList
        String[] result = Lista.split(";");
        //arrayUtilizadores = new ArrayList();
        for (int x=0; x<result.length; x++)
        {
            int ipcheck = 0;
            for(int i = 0; i < arrayUtilizador.size(); i++ )
            {
                ArrayList p = (ArrayList)arrayUtilizador.get(i);
                if(p.get(0).equals(result[x].toString()))
                {
                    ipcheck++;
                }
            }
            if(ipcheck==0)
            {
                ArrayList user = new ArrayList(); //Novo Arraylist que guarda a informaçao de apenas um utilizador
                user.add(0, result[x]); //IP
                user.add(1, ""); //Nome
                user.add(2, ""); //Estado
                //arrayUtilizadores.add(x, user);
                arrayUtilizador.add(user);
                cliente.txtPresencas.add(result[x]+"\n");
                //System.out.println("Utilizadores - IP -> " + user);
            }

        }

        printUsers();

        //return List;
     }
        public void addIP(String ip) throws Exception
        {

        ArrayList user = new ArrayList(); //Novo Arraylist que guarda a informaçao de apenas um utilizador
        user.add(0, ip); //IP
        user.add(1, ""); //Nome
        user.add(2, ""); //Estado
        arrayUtilizador.add(user);
        cliente.txtPresencas.add(ip+"\n");
        //System.out.println("IP -> " + user);
        }

        public void getInfoLista() throws Exception
    {

        for(int i = 0; i < arrayUtilizador.size(); i++ )
        {
            ArrayList p = (ArrayList)arrayUtilizador.get(i);
            String info = "";
            EnviarMensagem message = new EnviarMensagem();
            info = message.sendInfoReq(p.get(0).toString(), UtilizadorCliente, EstadoCliente);
            System.out.println("Info Recebida -> " + info);

            if(info != null)
            {
                String[] result = info.split(";");
                if(result[0].equals("DESLIGADO"))
                {
                    p.set(2, result[0]);
                    arrayUtilizador.set(i, p);
                    System.out.println("User desligado -> " + p.get(0));

                }
                else
                {
                    if(result.length==2)
                    {
                    p.set(1, result[0]);
                    p.set(2, result[1]);
                    arrayUtilizador.set(i, p);
                    //System.out.println("User ligado -> " + p);
                    }

                }
            }

       }

         printUsers();

    }

    public void EnviaListaTXT(String texto) throws Exception
    {

        for(int i = 0; i < arrayUtilizador.size(); i++ )
        {
            ArrayList p = (ArrayList)arrayUtilizador.get(i);
            EnviarMensagem messagem = new EnviarMensagem();
            messagem.enviatxtMSG(p.get(0).toString(), IPCliente, UtilizadorCliente, texto);
            System.out.println("Utilizadores.EnviaListaTXT - Mensagem enviada a -> "+p.get(0).toString());

      }

    }

Nao sei se me consegui explicar…