Vai al contenuto





Archived

Questa discussione è archiviata e chiusa a future risposte.

SkyDr4g0n

Input da tastiera in Java

Recommended Posts

Salve ragazzi. Il problema è semplice. Sto cercando un comando per Java che mi faccia rapidamente l'input da tastiera, per capirci meglio cerco l'equivalente della "scanf" del C. :devil:

Sono riuscito momentaneamente ad aggirare l'ostacolo utilizzando una classe esterna e delle conversioni da String a float o a int, ma è molto frustrante...sto cercando di imparare il Java venendo dal C e mi trovo abbastanza bene...per ora solo questa mancanza dell'equivalente della scanf mi manda in crisi... ;):DD

Grazie in anticipo per le risposte :devil:


Now...I think different...

iPod Nano 2GB Black

iMac 20" Core2Duo 2.16Ghz, 1.5GB RAM, 256MB VRAM

Ci SoNo "COSE" Che PoSSoNo FuNZioNaRe, PeR TuTTo iL ReSTo C'è WiNDoWs...

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti


Grazie...il problema è che io ho già fatto una cosa analoga. Cercavo un comando immediato tipo quello per l'output:

System.out.println()

l'ideale sarebbe una cosa del tipo:

System.in. readln()

magari dotato di polimorfismo in modo da ricevere come paramtro tutti i tipi primitivi di dati e le stringhe, ma forse chiedo troppo. Fondamentalmente non mi spiego perchè sia sul C che sul "matusalemme" Pascal ci siano comandi immediati come scanf() e readln() e invece sul Java si debba fare tutto sto macello ogni volta :barella:


Now...I think different...

iPod Nano 2GB Black

iMac 20" Core2Duo 2.16Ghz, 1.5GB RAM, 256MB VRAM

Ci SoNo "COSE" Che PoSSoNo FuNZioNaRe, PeR TuTTo iL ReSTo C'è WiNDoWs...

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

prova la classe Scanner

Scanner scannerIO = new Scanner(System.in);

dopo per scrivere la richiesta fai normalmente

System.out.println("Quanti denti hai?");

e per leggere

int numeroDenti = scannerIO.nextInt();

magari dai un occhio alle API della classe per vedere se fa al tuo caso


Chi è lei? Il numero 2. Chi è il numero 1? Lei è il numero 6.

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Altrimenti BufferedReader

InputStreamReader converter = new InputStreamReader(System.in);

BufferedReader in = new BufferedReader(converter);

String line = in.readLine();


Chi è lei? Il numero 2. Chi è il numero 1? Lei è il numero 6.

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Grazie...in effetti io ho proprio usato la classe scanner,anche se il processo che ho utilizzato è un po più lungo ma mi permette una migliore leggibilità del codice...

Il problema è che non ricorderò mai a memoria queste istruzioni...tra l'altro sono diverse le acquisizioni di Int e String...e per i double,float,ecc?

E' un macello sto Java...provvederò a creare una nuova classe (contenente l'acquisizione tramite classe scanner e le rispettive conversioni nei vari tipi) che implementerò in ogni progetto...è l'unica soluzione possibile.

Continuo a rimanere allibito. Nel C è 200 volte più immediato...è assurod che in Java non ci sia qualcosa di "diretto". :DD


Now...I think different...

iPod Nano 2GB Black

iMac 20" Core2Duo 2.16Ghz, 1.5GB RAM, 256MB VRAM

Ci SoNo "COSE" Che PoSSoNo FuNZioNaRe, PeR TuTTo iL ReSTo C'è WiNDoWs...

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Ti dico io come fare che Java cè l'ho fresco!

Allora...devi incapsulare i flussi di I/O presenti nelle librerie java.io;

Per un semplice input da tastiera devi fare la seguente istruzione:

BufferedReader br=new BufferedReader(new InputStreamReader(System.in));

String s=br.readLine();

In questo modo acquisisci come "caratteri", l'intera riga sino al return;

se vuoi gestire un flusso dati binario....divertiti! leggiti la documentazione Java...ma lascia perdere cè solo da perdere tempo...USA C che è 10000 volte meglio!!

Ciao


Vai...ci sono altri mondi oltre a questo. John Jake Chambers

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Il C lo conosco già...

Sto seguendo un mini-master di java,ecco perchè mi serve sapere alcune cose :spamposter:

In ogni caso ho scoperto che il tutto è ancora più facilmente risolvibile con le Input Dialog...credo che userò quelle...sono anche più "carine" da vedere :D


Now...I think different...

iPod Nano 2GB Black

iMac 20" Core2Duo 2.16Ghz, 1.5GB RAM, 256MB VRAM

Ci SoNo "COSE" Che PoSSoNo FuNZioNaRe, PeR TuTTo iL ReSTo C'è WiNDoWs...

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Vorrei sapere se è possibile implementare un medoto per Input da tastiera, senza che ogni volta che mi serve un input devo scrivere linee e linee di codice.

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

×
×
  • Crea Nuovo...

Info

Per offrirti il miglior servizio possibile il sito utilizza cookies, anche di terze parti e profilazione. Utilizzando il sito acconsenti al loro impiego. Privacy Policy Termini di utilizzo