Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    [java] Cancellare gli spazi in una stringa

    Salve, ho due problemi BANALISSIMI che in java non riesco a risolvere.

    1- Ho una stringa di caratteri dove ci sono degli spazi ' ', e volevo eliminarli.
    Ho provato a richiamare il metodo replace() così...
    codice:
    string.replace( ' ' , '');
    Ma non funziona

    2- Volevo cambiare un determinato carattere di una stringa... ho provato con il metodo charAt() così...

    codice:
    string.charAt(3) = 'a';
    Ma non funziona manco questo

    Ho cercato altri metodi, ma non ne ho trovati D:

  2. #2
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802

    Re: [java] Cancellare gli spazi in una stringa

    Originariamente inviato da zkivo
    1- Ho una stringa di caratteri dove ci sono degli spazi ' ', e volevo eliminarli.
    Ho provato a richiamare il metodo replace() così...
    codice:
    string.replace( ' ' , '');
    Ma non funziona
    '' non è un char valido
    replace inoltre effettua solo una sostituzione

    codice:
    String string = "Hello World 123";
    string = string.replaceAll(" ", "");
    System.out.println(string); // HelloWorld123
    Originariamente inviato da zkivo
    2- Volevo cambiare un determinato carattere di una stringa... ho provato con il metodo charAt() così...

    codice:
    string.charAt(3) = 'a';
    Gli oggetti String sono immutabili. Puoi usare StringBuffer.
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  3. #3

    Re: Re: [java] Cancellare gli spazi in una stringa

    Originariamente inviato da Alex'87
    '' non è un char valido
    replace inoltre effettua solo una sostituzione

    codice:
    String string = "Hello World 123";
    string = string.replaceAll(" ", "");
    System.out.println(string); // HelloWorld123


    Gli oggetti String sono immutabili. Puoi usare StringBuffer.
    In realtà la replace effettua una sostituzione per substring, quindi proprio per gli spazi è sufficiente (ho anche provato per curiosità).

  4. #4
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802

    Re: Re: Re: [java] Cancellare gli spazi in una stringa

    Originariamente inviato da Darkobra
    In realtà la replace effettua una sostituzione per substring, quindi proprio per gli spazi è sufficiente (ho anche provato per curiosità).
    Non penso di aver capito cosa vuoi dire.
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  5. #5
    Utente di HTML.it L'avatar di Nikopol
    Registrato dal
    Jan 2011
    Messaggi
    120
    Ciao,
    per eliminare gli spazi c'è anche il metodo trim()

    Per sostituire un carattere puoi creare una stringa nuova in questo modo:
    codice:
          string = string.substring(0,3)+ 'a' + string.substring(4);
    oppure usare una StringBuilder e sostituire il carattere
    es:
    codice:
          StringBuilder sb = new StringBuilder ();
          sb.append(string) ;
          sb.setCharAt(3, 'a');
          string = sb.toString();

  6. #6
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da Nikopol
    Ciao,
    per eliminare gli spazi c'è anche il metodo trim()
    Questo elimina gli spazi presenti all'inizio e alla fine della stringa, non quelli all'interno.
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  7. #7
    Utente di HTML.it L'avatar di Nikopol
    Registrato dal
    Jan 2011
    Messaggi
    120
    Questo elimina gli spazi presenti all'inizio e alla fine della stringa, non quelli all'interno.
    ops, hai ragione, mi ero dimenticato che non elimina gli spazi all'interno della riga.
    Grazie pe a correzione

  8. #8
    Eccomi qua, ho utilizzato il codice
    codice:
    String string = "Hello World 123";
    string = string.replaceAll(" ", "");
    System.out.println(string); // HelloWorld123
    e funziona alla perfezione! Grazie alex!

    Invece,per sostituire un carattere ho inizialmente usato la classe StringBuffer, ma se si usa bene questo metodo
    Per sostituire un carattere puoi creare una stringa nuova in questo modo:
    codice:
    string = string.substring(0,3)+ 'a' + string.substring(4);
    va anche bene! Grazie Nikopol!

  9. #9
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da zkivo
    Invece,per sostituire un carattere ho inizialmente usato la classe StringBuffer, ma se si usa bene questo metodo

    va anche bene! Grazie Nikopol!
    Occhio che scrivendo

    string = string.substring(0,3)+ 'a' + string.substring(4);

    vai a consumare memoria inutilmente: substring ti crea ogni volta una nuova stringa, così come la concatenazione..
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.