Torna indietro   Hardware Upgrade Forum > Software > Programmazione

WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro
WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro
Con Midnight, Blizzard tenta il colpaccio: il player housing sbarca finalmente su Azeroth insieme a una Quel'Thalas ricostruita da zero. Tra il dramma della famiglia Ventolesto e il nuovo Prey System, ecco com'è la nuova espansione di World of Warcraft
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Nuova frontiera per i robot tagliaerba, con Ecovacs GOAT O1200 LiDAR Pro che riconosce l'ambiente in maniera perfetta, grazie a due sensori LiDAR, e dopo la falciatura può anche rifinire il bordo con il tagliabordi a filo integrato
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Equilibrio e potenza definiscono il Samsung Galaxy S26+, un flagship che sfida la variante Ultra e la fascia alta del mercato con il primo processore mobile a 2nm. Pur mantenendo l'hardware fotografico precedente, lo smartphone brilla per un display QHD+ da 6,7 pollici d'eccellenza, privo però del trattamento antiriflesso dell'Ultra, e per prestazioni molto elevate. Completano il quadro la ricarica wireless a 20W e, soprattutto, un supporto software settennale
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 22-12-2007, 12: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, 13: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, 14:28   #3
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
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, 14: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, 14:41   #5
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
Codice:
for(char c : "Fauno".toCharArray()){
	String s = "" + c;
}
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2007, 14: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, 17: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 17:59.
lolloxo è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2007, 18:55   #8
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
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 18:58.
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2007, 19: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: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro WoW: Midnight, Blizzard mette il primo, storico ...
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato Ecovacs Goat O1200 LiDAR Pro: la prova del robot...
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere? Recensione Samsung Galaxy S26+: sfida l'Ultra, m...
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti Zeekr X e 7X provate: prezzi, autonomia fino a 6...
Marathon: arriva il Fortnite hardcore Marathon: arriva il Fortnite hardcore
Nutanix accelera la migrazione da VMware...
Nutanix apre ai neocloud: piattaforma mu...
Nutanix amplia la piattaforma cloud e st...
Le fotografie dell'eclissi solare e dell...
Oracle AI Database si potenzia con nuove...
Russia offline: blackout internet mobile...
Gemini, Google investe 30 milioni per la...
Roborock Qrevo Edge S5A: 17.000 Pa, acqu...
Resa pubblica la foto della ''Terra che ...
Il robot che ha piegato 200 scatole di f...
SteelSeries Aerox 3 Wireless Gen 2: nuov...
"Quasi sociopatico": Sam Altma...
Star Wars Eclipse in difficoltà: ...
Gestione del team e romance organiche: l...
Intel lancia Core Ultra X9 378H: hardwar...
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