Nel tuo codice ci sono molti errori. Vediamo di elencarli in ordine di comparsa nel codice:
codice:
keyboardinput = new datainputstream(System.in);
// Correzione: DataInputStream va con le maiuscole
keyboardinput = new DataInputStream(System.in);
------------------------------------------------------
continua=true; // questo è inutile
------------------------------------------------------
nomi[i]=keyboardinput.readln();
// correzione: readln() non esiste, esisterebbe readLine(),
// ma è deprecato: dovresti utilizzare un BufferedReader.
nomi[i] = keyboardinput.readLine();
------------------------------------------------------
if (nomi[i] = "X") continua=false;
// correzione: il confronto andrebbe con due simboli di =
// ma per gli oggetti si usa equals().
if ( nomi[i].equals("X") ) continua = false;
------------------------------------------------------
while (continua=true) ;
// correzione: il confronto si fa con due simboli di =
// anche se è preferibile evitarli quando si ha a che
// fare con variabili o espressioni booleane:
while (continua); // al massimo: while (continua == true);
------------------------------------------------------
System.out.print("Il nome scelto dal computer è: ", nomi[randomname()]);
// correzione: se dichiari un metodo con la maiuscola,
// lo devi richiamare con la maiuscola
System.out.print("Il nome scelto dal computer è: ", nomi[Randomname()]);
------------------------------------------------------
int Randomname() {
int s=random.nextInt();
if (s<0) s=0-s;
return s%n;
}
// correzione: i metodi vanno messi all'interno della classe e non all'esterno
Ciao.