Un confronto tra stringhe

di il
5 risposte

Un confronto tra stringhe

Ciao ragazzi, attualmente sto leggendo un libro – programmazione di base e avanzata java… e nello svolgere gli esercizi e/o progetti di fine capitolo sto riscontrando alcuni problemucci. Premetto che sono alle prime armi e sto studiando da autodidatta, e naturalmente sono consapevole degli ostacoli che dovrò superare “da solo”, ma attualmente sono bloccato su un esercizio e non vorrei saltare nulla (...il meno possibile). Ad ogni modo mi viene chiesto di scrivere un frammento di codice che legge parole digitate da tastiera (Scanner) finché non viene digitata la parola “fine”, il tutto utilizzando i costrutti while e do-while, inoltre, per ciascuna parola bisogna riportare se il primo carattere è uguale all'ultimo.

Sto riscontrando due problemi, ma non pretendo la Luna, mi basterebbe capire come risolvere la questione dei caratteri, dal momento che “stringa.charAt()” filtra il primo carattere ma l'ultimo non c'è verso, se inserisco “stringa.charAt(-1)” l'IDE mi restituisce un errore. La parola andrà inserita da tastiera per cui non posso conoscerla in anticipo (ovviamente).

Se utilizzo stringa.length() vale il contrario, ossia riesco a confrontare l'ultimo carattere ma non il primo perché “0” non funziona.

Prima di iscrivermi su questo forum ho cercato informazioni curiosando per il web, ma niente. In tutti i forum, e manuali vari che ho letto, non vi è alcun esempio utile (al mio problema), nessuno spiega come si possa confrontare/filtrare il “primo e l'ultimo” carattere di una stringa. Il che mi fa pensare che la cosa sia scontata, be', per me non lo è.

Domanda: C'è qualche buon samaritano che ha voglia di spiegarmi come posso risolvere questo problema così da memorizzarlo una volta per tutte?

Grazie in anticipo...

5 Risposte

  • Re: Un confronto tra stringhe

    Affronta un problema alla volta. Comincia con lo scrivere un programmino che fa inserire all'utente delle parole finchè non viene inserito "fine".
  • Re: Un confronto tra stringhe

  • Re: Un confronto tra stringhe

    Innanzitutto grazie per le risposte.

    x candaluar
    Scanner tastiera = new Scanner(System.in);
    		String parole, ancora;	
    		boolean altreParole = true;
    	
    		System.out.println("Scrivi una parola...");
    		parole = tastiera.next();		
    		
    		while (altreParole) {
    			altre = tastiera.next();
    			if (altre.equalsIgnoreCase("fine")) 
    				altreParole = false;	
    			else 
    				parole = parole + " " + altre;			
    		}
    		System.out.println("\t" + parole);
    Con do-while non mi riesce...

    x andbin lunghezza-1 non funziona, come faccio a confrontare il primo e l'ultimo carattere con stringa.lenght()?

    scrivere
     if (stringa.lenght() == stringa.lenght() -1) 
                  System.out.println("È uguale");
               else 
                  System.out.println("Non è uguale"); 
    non si può fare perché gli chiedendo nel primo caso la lunghezza dell'intera stringa, se potessi scrivere stringa.lenght() 0, ma non si può...
  • Re: Un confronto tra stringhe

  • Re: Un confronto tra stringhe

    Grande Andrea, grazie.
Devi accedere o registrarti per scrivere nel forum
5 risposte