Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura
Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura
Il primo Micro RGB di Samsung per il salotto è il 65 pollici da 2.749 euro. Sul banco di misura abbiamo rilevato 2.000 nit di picco, nero assoluto con il local dimming e il 91,4% del BT.2020, il colore più ampio che abbiamo misurato su un LCD
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre
Apple ha rinnovato iPhone 18 Pro soprattutto dentro: chip A20 Pro a 2 nm con memoria affiancata al SoC, camera di vapore tre volte più ampia, Dynamic Island più piccola del 25% grazie a Face ID sotto il display e fotocamera principale con diaframma variabile da f/1.48 a f/4. Lo abbiamo misurato al colorimetro e nei benchmark, usato con iOS 27 e messo alla prova in fotografia tra laghi, borghi e interni poco illuminati
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34
A Londra, per il trentennale dei Toughbook, Panasonic ha presentato il tablet G3 e il 2-in-1 34. Con Jon Tucker, a capo dell'ingegneria europea, abbiamo parlato di ciò che non si vede: batterie, antenne, porte seriali e accorgimenti nati sul campo
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 20-12-2008, 18:07   #1
NICOD.
Member
 
L'Avatar di NICOD.
 
Iscritto dal: Dec 2008
Messaggi: 58
[JAVA] Come mai mi stampa tre volte il System.out.println("...");?

Premetto che ho cominciato a studiare Java da manuale e comincio a fare qualche programmino stupido per il momento.
Come ambiente utilizzo Windows Xp e come compilatore Java utilizzo Eclipse.
Allora ho creato un semplice programma che vi posto..
Codice:
class LeggiCar {

	/*Il programma esce se viene inserito un '.' e conta anche gli spazi che eventualmente vengono inseriti. ATTENZIONE IL PROGRAMMA LEGGE UN SOLO CARATTERE ALLA VOLTA QUINDI O SPAZIO O '.' O CARATTERE QUALSIASI  */
	public static void main(String args[]) 
	throws java.io.IOException {
		
		char ch;
		int sp = 0;
		
		System.out.println("Inserisci il carattere . per terminare l'esecuzione");
		ch = (char) System.in.read();
		
		while (ch != '.'){
			System.out.println("Inserisci il carattere . per terminare l'esecuzione");
			ch = (char) System.in.read();
			if(ch == ' ')
				sp++;
		}
		System.out.println("Il numero di spazi inseriti è " + sp);

	}

}
Il problema è che mi stampa System.out.println("Inserisci il carattere . per terminare l'esecuzione"); che è all'interno del while 3 volte esatte.

Come potete vedere dall'immagine



Ho pensato che siccome Java utilizza un buffer a righe, quando premo invio lo conta come carattere e quindi non mi chiede conferma e stampa ulteriormente il messaggio poichè la variabile ch è diversa da '.'

Non so più a cosa pensare visto che in ambiente MAC la stampa avviene 2 volte e quindi è concepibile per il motivo che ho gia spiegato.

Qualcuno almeno è in grado di fare luce sulla questione?
Grazie
NICOD. è offline   Rispondi citando il messaggio o parte di esso
Old 20-12-2008, 19:52   #2
Oceans11
Senior Member
 
L'Avatar di Oceans11
 
Iscritto dal: Sep 2005
Città: Torino
Messaggi: 606
Quote:
Originariamente inviato da NICOD. Guarda i messaggi
Premetto che ho cominciato a studiare Java da manuale e comincio a fare qualche programmino stupido per il momento.
Come ambiente utilizzo Windows Xp e come compilatore Java utilizzo Eclipse.
Allora ho creato un semplice programma che vi posto..
Codice:
class LeggiCar {

	/*Il programma esce se viene inserito un '.' e conta anche gli spazi che eventualmente vengono inseriti. ATTENZIONE IL PROGRAMMA LEGGE UN SOLO CARATTERE ALLA VOLTA QUINDI O SPAZIO O '.' O CARATTERE QUALSIASI  */
	public static void main(String args[]) 
	throws java.io.IOException {
		
		char ch;
		int sp = 0;
		
		System.out.println("Inserisci il carattere . per terminare l'esecuzione");
		ch = (char) System.in.read();
		
		while (ch != '.'){
			System.out.println("Inserisci il carattere . per terminare l'esecuzione");
			ch = (char) System.in.read();
			if(ch == ' ')
				sp++;
		}
		System.out.println("Il numero di spazi inseriti è " + sp);

	}

}
Il problema è che mi stampa System.out.println("Inserisci il carattere . per terminare l'esecuzione"); che è all'interno del while 3 volte esatte.

Come potete vedere dall'immagine



Ho pensato che siccome Java utilizza un buffer a righe, quando premo invio lo conta come carattere e quindi non mi chiede conferma e stampa ulteriormente il messaggio poichè la variabile ch è diversa da '.'

Non so più a cosa pensare visto che in ambiente MAC la stampa avviene 2 volte e quindi è concepibile per il motivo che ho gia spiegato.

Qualcuno almeno è in grado di fare luce sulla questione?
Grazie
Penso che "invio" lo conti come 2 caratteri, e non 1.
__________________
"Se proprio dovete piratare un prodotto, preferiamo che sia il nostro piuttosto che quello di qualcun altro." [Jeff Raikes]
"Pirating software? Choose Microsoft!"
Oceans11 è offline   Rispondi citando il messaggio o parte di esso
Old 20-12-2008, 20:27   #3
NICOD.
Member
 
L'Avatar di NICOD.
 
Iscritto dal: Dec 2008
Messaggi: 58
Non è sicuro quindi..?
NICOD. è offline   Rispondi citando il messaggio o parte di esso
Old 20-12-2008, 22:36   #4
franksisca
Senior Member
 
L'Avatar di franksisca
 
Iscritto dal: May 2005
Città: Roma
Messaggi: 7938
dovrebbe essere \n
__________________
My gaming placement
franksisca è offline   Rispondi citando il messaggio o parte di esso
Old 21-12-2008, 10:31   #5
NICOD.
Member
 
L'Avatar di NICOD.
 
Iscritto dal: Dec 2008
Messaggi: 58
Risolto..
/r/n sono i caratteri in più..
e quindi li conta come altri caratteri


Si può chiudere
NICOD. è offline   Rispondi citando il messaggio o parte di esso
Old 23-12-2008, 20:57   #6
malocchio
Senior Member
 
L'Avatar di malocchio
 
Iscritto dal: Feb 2007
Città: Verona
Messaggi: 1060
Non so se si applica alle console, ma

\r\n Windows
\n Linux
\r Mac
__________________
malocchio è offline   Rispondi citando il messaggio o parte di esso
Old 26-12-2008, 19:12   #7
NICOD.
Member
 
L'Avatar di NICOD.
 
Iscritto dal: Dec 2008
Messaggi: 58
Ma c'è un modo per ovviare a questo problema?
Oppure no?

non penso che non ci sia niente di RIPARATORE

NICOD. è offline   Rispondi citando il messaggio o parte di esso
Old 26-12-2008, 19:17   #8
Don[ITA]
Senior Member
 
L'Avatar di Don[ITA]
 
Iscritto dal: Jul 2006
Città: Bergamo
Messaggi: 401
Usa la classe Scanner

Saluti
__________________
iMac 27" 5K
Don[ITA] è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura Samsung Micro RGB R95H, il primo LCD a LED rossi...
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre iPhone 18 Pro: la recensione del miglior iPhone ...
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34 Panasonic, 30 anni di Toughbook: la "Bibbia...
realme C100x, lo smartphone economico con la batteria da 7500 mAh. La recensione realme C100x, lo smartphone economico con la bat...
Star Wars Zero Company è l'erede di XCOM 2 Star Wars Zero Company è l'erede di XCOM ...
Il Dipartimento della Guerra USA pensa a...
SpaceX ha lanciato le missioni Crew-13, ...
DJI Avata 2 in offerta Prime: drone FPV ...
Microsoft vuole far agire l'IA prima anc...
Ginga porta il monitoraggio delle perfor...
Tesla sorprende Wall Street: 486.532 con...
Cosa succede alle ossa degli astronauti ...
AgriEuro Premium Days: il 6 e 7 ottobre ...
259 euro per 2 TB di SSD PCIe 4.0 (Biwin...
GPT-6 Astra decifra dopo 217 anni una le...
Roborock Saros 20 Neo: pulisce al meglio...
Samsung Galaxy S27 Ultra, nuove conferme...
Offerte Prime Candy: lavatrice ProWash 3...
Tegola su Anthropic, gli agenti AI valgo...
E-bike in carbonio con un prezzo assurdo...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 20:03.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v