Sistemas Distribuídos-UDP-Socket

Alguém tem um material bom ou dicas de videos que expliquem sobre como usar Socket (Em JAVA)e aplicação UDP?
tenho que fazer uma aplicação UDP , que recebe dois clientes que tirem par ou ímpar e o servidor informar o ganhador .Os números enviados pelos clientes podem ser digitados pelo usuário. O primeiro cliente a enviar o numero é o par e o segundo impar .
Não estou conseguindo fazer, e gostaria de entender mais sobre o assunto.

Não faz. a sua duvida pode ser a duvida de outra pessoa no futuro.

se vc ja sabe como resolver, vc mesma poderia responder e marcar como resolvido.

por exemplo, aqui tem um exemplo de cliente/servidor em Java usando UDP:

Na verdade ainda não achei a solução

sério? eu postei um exemplo ai em cima, não te atende?

vejamos, vc tem essas linhas:

         DatagramSocket serverSocket = new DatagramSocket(9876);
            byte[] receiveData = new byte[1024];
            byte[] sendData = new byte[1024];
            while(true)
               {
                  DatagramPacket receivePacket = new DatagramPacket(receiveData, receiveData.length);
                  serverSocket.receive(receivePacket);
...

no lugar de while(true) vc tem um loop de 2 passos ( o par e o impar ).

com udp vc não precisa fazer um accept na conexão. ele vai receber um DatagramPacket que contem informações para vc poder responder ( IP e Porta ).

o q vc precisa fazer:

  1. leia o primeiro packet ( o que deve conter um numero par )
    String input = new String( receivePacket.getData());

vc precisa converter o getData() ( array de bytes ) em um numero inteiro. é mole de converter pra string e depois converter pra inteiro

https://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html#parseInt(java.lang.String)

  1. uma vez lido vc pode guardar o numero, endereço e porta e um booleando ( ehPar ) para saber quem é quem. ai vc tem uma estrutura de dados, um objeto com 4 campos bem definidos que vc vai montar a partir do input vindo via UDP.

  2. leu um, leu outro, agora vc decide quem venceu.

somo os numeros e veja se o modulo por 2 é zero.

if( valor % 2 == 0 ) { é par } else { é impar }

pronto vc sabe quem venceu. agora pode responder quem venceu.

realmente não é obvio como se faz isso. mas se vc explorar um pouco os exemplos que existem vc vai longe.