Torna indietro   Hardware Upgrade Forum > Software > Programmazione

WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
Un mondo affollato e vivo, personaggi destinati a sparire a fine test e nessuno a inseguire l'oggetto giusto. Beta e stress test di World of Warcraft: Forever hanno fatto emergere un roleplay spontaneo, tra danze a Goldshire e code ordinate ai PNG
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA
In tre giorni a Las Vegas Oracle ha presentato agenti che eseguono il lavoro, l'alleanza con OpenAI e un cloud aperto agli acceleratori di tutti. Ma i clienti europei chiedono garanzie prima ancora delle funzionalità
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort
Fino a 740 km WLTP con la batteria da 97,2 kWh, sospensioni che leggono la strada con una telecamera e un abitacolo da salotto parigino. La nuova DS N°7 raccoglie l'eredità della DS 7 e la porta, per la prima volta, nel mondo 100% elettrico. Ecco come è fatta, cosa offre e quanto costa.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 22-12-2007, 13:50   #1
lolloxo
Senior Member
 
Iscritto dal: Dec 2006
Messaggi: 565
[JAVA] Leggere ogni carattere della stringa sequenzialmente

Ho una stringa qualsiasi per esempio Fauno
Adesso mi serve un metodo che mi legga ogni carattere
Prima mi legga la F
poi c'è una determinata azione
se serve mi legge la lettera successiva la a
e così via

C'è il metodo substring ma mi sembra molto brutale e lungo vorrei qualcosa di più efficente
lolloxo è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2007, 14:07   #2
magix2003
Senior Member
 
L'Avatar di magix2003
 
Iscritto dal: Aug 2005
Città: Wien
Messaggi: 435
Una soluzione potrebbe essere:

Codice:
String s = "ciao";
for(int i = 0; i < s.length(); i++)
  char lettera = s.charAt(i);
  //fai quello che vuoi con la lettera
  if(!condizione)
    break;
__________________
"Sono 126 miglia per Chicago. Abbiamo il serbatoio pieno, mezzo pacchetto di sigarette, è buio, e portiamo tutt'e due gli occhiali da sole"

magix2003 è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2007, 15:28   #3
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12113
Codice:
char[] string = "Fauno".toCharArray();
for (char c : string){
    //do anything
}
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2007, 15:34   #4
lolloxo
Senior Member
 
Iscritto dal: Dec 2006
Messaggi: 565
Quote:
Originariamente inviato da magix2003 Guarda i messaggi
Una soluzione potrebbe essere:

Codice:
String s = "ciao";
for(int i = 0; i < s.length(); i++)
  char lettera = s.charAt(i);
  //fai quello che vuoi con la lettera
  if(!condizione)
    break;
Perfetto il tuo metodo è ottimo
solo che mi restituisce un char e a me servono le proprietà della stringa
Come faccio a convertire il char in stringa?
Avevo provato questo metodo ma non funge:


String k = new String (lettera);
lolloxo è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2007, 15:41   #5
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12113
Codice:
for(char c : "Fauno".toCharArray()){
	String s = "" + c;
}
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2007, 15:51   #6
carter100
Senior Member
 
Iscritto dal: Jul 2007
Messaggi: 1159
Quote:
Originariamente inviato da lolloxo Guarda i messaggi
Come faccio a convertire il char in stringa?
Avevo provato questo metodo ma non funge:


String k = new String (lettera);
Puoi anche usare un vettore di char al posto di 1 char solo, e questo viene preso correttamente nella stringa con quella inizializzazione.
carter100 è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2007, 18:42   #7
lolloxo
Senior Member
 
Iscritto dal: Dec 2006
Messaggi: 565
Quote:
Originariamente inviato da ^TiGeRShArK^ Guarda i messaggi
Codice:
for(char c : "Fauno".toCharArray()){
	String s = "" + c;
}

ma in teoria non basta questo String s = "" + c; ?
a occhio mi sembra di si.
Cioè leggo con charAt e e poi String s = "" + lettera;

Oppure il metodo tostring potrebbe funzionare?

Ultima modifica di lolloxo : 22-12-2007 alle 18:59.
lolloxo è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2007, 19:55   #8
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12113
Quote:
Originariamente inviato da lolloxo Guarda i messaggi
ma in teoria non basta questo String s = "" + c; ?
a occhio mi sembra di si.
Cioè leggo con charAt e e poi String s = "" + lettera;

Oppure il metodo tostring potrebbe funzionare?

non hai detto che volevi scorrerti carattere per carattere la stringa "Fauno" (o qualsiasi altra stringa) e usare su ogni carattere i metodi della classe String per farci qualcosa?
il codice che ho postato fa esattamente questo.
Perchè dovresti leggerti il carattere con il charAt se il mio codice ti restituisce tutti i caratteri della stringa come stringa di dimensione unitaria?
A meno che non si debbano fare rimozioni è sempre meglio usare il for each al posto del for normale dato che il codice risultante è + compatto e imho + leggibile.
__________________

Ultima modifica di ^TiGeRShArK^ : 22-12-2007 alle 19:58.
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2007, 20:36   #9
lolloxo
Senior Member
 
Iscritto dal: Dec 2006
Messaggi: 565
Quote:
Originariamente inviato da ^TiGeRShArK^ Guarda i messaggi

non hai detto che volevi scorrerti carattere per carattere la stringa "Fauno" (o qualsiasi altra stringa) e usare su ogni carattere i metodi della classe String per farci qualcosa?
il codice che ho postato fa esattamente questo.
Perchè dovresti leggerti il carattere con il charAt se il mio codice ti restituisce tutti i caratteri della stringa come stringa di dimensione unitaria?
A meno che non si debbano fare rimozioni è sempre meglio usare il for each al posto del for normale dato che il codice risultante è + compatto e imho + leggibile.
scusami per la mia testardaggine hai perfettamente ragione e ti ringrazio ho risolto con il tuo codice
lolloxo è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà WoW Forever: la beta è stato uno dei mome...
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA Oracle AI World 2026: in Europa prima la sovrani...
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort DS N°7 E-Tense: il SUV premium made in Melfi...
Recensione Samsung Galaxy Tab S12 Ultra: non chiamatelo tablet... è molto di più Recensione Samsung Galaxy Tab S12 Ultra: non chi...
Hyundai IONIQ 5 N, l'elettrica che finge di essere termica (e ci riesce da paura) Hyundai IONIQ 5 N, l'elettrica che finge di esse...
Gli USA dipendono dai robot stranieri: T...
Volkswagen non ha più soldi per l...
Telescopio spaziale Hubble: la NASA cerc...
Più sottile e potente: le nuove i...
Il JPL estende la vita operativa della s...
DAZN Full è in offerta: tutta la ...
GTA 6 su PC potrebbe arrivare prima del ...
Da zero al tracciato in secondi: LibreCo...
Il regista Rian Johnson lancia a 12,99 d...
Microsoft stravolge l'app Sicurezza di W...
Mercato smartphone in caduta libera: -20...
Android 17 QPR3 Beta 3 riporta il blocco...
Le 10 offerte TOP in Amazon del weekend:...
Dyson, doppio crollo su Amazon: purifica...
Il 70% delle imprese non vede effetti de...
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:52.


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