Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    123

    metodo isDigit

    Ho un piccolo problema che non riesco a risolvere.
    Data una frase devo riuscire a creare un metodo che mi dica quante cifre sono presenti nella frase, il tutto utilizzando isDigit.
    Ci ho provato ma ottengo in output sempre il numero di tutti i caratteri della frase

    public static void occorrenzeCifre(String str)
    {
    int numero=0;
    char ch;
    for(int i=0;i<str.length();i++)
    {
    ch=str.charAt(i);
    if(Character.isDigit(ch));
    {
    numero++;
    }
    }
    System.out.println("Il numero di cifre presenti nel testo sono " +numero+ "!!");
    }

    Ovviamente è un esercizio datomi dal prof. per me che sono ancora un novellino.

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: metodo isDigit

    Originariamente inviato da bobo24
    Data una frase devo riuscire a creare un metodo che mi dica quante cifre sono presenti nella frase, il tutto utilizzando isDigit.
    Ci ho provato ma ottengo in output sempre il numero di tutti i caratteri della frase
    ; dopo il if(.....) prima della {

    Non ci vuole ovviamente.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    123

    unexpected type

    Incredibile, un errore davvero da novellino

    Dato che sono qua ne approfitto per chiedere un'altra piccolezza (visto che faccio errori del genere) :
    Ho il seguente metodo che dovrebbe sostituire la vocale che ho passato ad ogni vocale presente nella Stringa...io ho iniziato a fare il mio metodo solo che già al primo if mi dà errore per quello che c'è all'interno, ed anche questa volta a me sembra che a logica potrebbe andare bene...
    qualche anima buona può aiutarmi
    (ovviamente so che il metodo non è completo e che manca anche il return)

    public static String sostituisci(char vocale, String str)
    {
    for(int i=0;i<str.length();i++)
    {
    if(str.charAt(i)=='a')
    {
    str.charAt(i)=vocale;
    }
    }
    }

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

    Re: unexpected type

    Originariamente inviato da bobo24
    str.charAt(i)=vocale;
    Un oggetto String è immutabile. Se vuoi modificare internamente la stringa dovresti usare StringBuilder
    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
    Prova così:

    codice:
    public static String sostituisci(String str, String vocale) {
        return str.replaceAll("a|e|i|o|u", vocale);
    }
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    123
    Grazie satifal per l'aiuto ma s'è ancora un problema :

    Scanner sc = new Scanner(System.in);
    System.out.println("Inserisci una vocale : ");
    String stringa = sc.next();
    char ch = stringa.charAt(0);

    Il problema è che io passo come vocale un carattere, mentre il metodo che mi hai dato tu vuole solo String...e non so come fare per dare in pasto un solo carattere (ovvero vocale) che però sia String.

  7. #7
    Scusa, niente di personale, ma a volte non capisco proprio. Sarà il copia e incolla che inibisce la capacità di ragionamento.

    Nel codice da te postato:

    codice:
    Scanner sc = new Scanner(System.in);
    System.out.println("Inserisci una vocale : ");
    String stringa = sc.next();
    char ch = stringa.charAt(0);
    La variabile stringa mi sembra sia appunto di tipo String, puoi passare quella al metodo sostituisci().
    Oppure modifica il metodo sostituisci così:

    codice:
    public static String sostituisci(String str, char vocale) {
        return str.replaceAll("a|e|i|o|u", String.valueOf(vocale));
    }
    in ogni caso un po' di iniziativa non guasterebbe.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

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.