Vi ringrazio per i vostri interventi, sono riuscito comunque a risolvere il problema, si trattava di una banale svista (ho ripreso a programmare da non molto). Per rispondere al secondo intervento, sono riuscito comunque a scrivere e leggere correttamente i dati nel flusso semplicemente scrivendo e leggendo i numeri nella stessa sequenza, ad esempio

server
out.write(numeroshort);
out.write(numerofloat);

client
in.readShort();
in.readFloat();

I numeri vengono rappresentati e stampati in ordine correttamente, ho solo un ulteriore problema, ossia il fatto che i numeri non vengono stampati tutti, ma è strutturale e ci sto lavorando

Grazie ancora