Visualizzazione dei risultati da 1 a 8 su 8

Hybrid View

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2015
    Messaggi
    5
    Grazie per le vostre risposte. Sto provando a risolvere il problema usando Stringtokenizer.
    Questo è quello che ho pensato, ma purtroppo non funziona.

    codice:
     package ricercaparole2;
    
    import java.util.Scanner;
    import java.util.StringTokenizer;
    
    /**
     *
     * @author 
     */
    public class RicercaParole2 {
    
        /**
         * @param args the command line arguments
         */
        public static void main(String[] args) {
            // TODO code application logic here
            String s, s1;
            boolean trovato = false;
            Scanner tastiera = new Scanner(System.in);
            
            System.out.println("Scrivi una frase");
            s = tastiera.nextLine();
            
            // Uniformo tutti i caratteri della stringa in caratteri minuscoli
            s1 = s.toLowerCase();
            
            StringTokenizer frase = new StringTokenizer(s1);
            while (frase.hasMoreTokens()) {
                if (frase.nextToken() == "console"){
                    trovato = true;
                } else {
                    trovato = false;
                }
            }
            
            if (trovato){
                 System.out.println("Parola trovata");
            } else {
                 System.out.println("Parola NON trovata");
            }
     
        }
        
    }

    Non riesco a capire dove sia l'errore, è come se saltasse le parole (token).

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da Polso9 Visualizza il messaggio
    codice:
                if (frase.nextToken() == "console"){
    Il contenuto delle stringhe (e degli oggetti, in generale) si confronta con equals() ... non con ==

    Il resto, comunque, non è corretto al 100%. Anche correggendo il confronto della parola, se è uguale è corretto mettere trovato = true. Ma è sbagliato mettere trovato = false quando invece non è quel token che cerchi! Perché ti funzionerebbe solo se "console" fosse l'ultimo token.
    Ultima modifica di andbin; 26-07-2015 a 12:12
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

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 © 2026 vBulletin Solutions, Inc. All rights reserved.