[Java] Cercare una stringa in un ArrayList di stringhe

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
Avatar utente
angelo.digiacomantonio
Prode Principiante
Messaggi: 67
Iscrizione: sabato 15 ottobre 2011, 13:07
Località: Città Sant'Angelo

[Java] Cercare una stringa in un ArrayList di stringhe

Messaggio da angelo.digiacomantonio »

Ciao ragazzi,
spero possiate aiutarmi a risolvere questo problema:

Codice: Seleziona tutto

public boolean cercaLibro(String libro){
	boolean trovato=false;
	for(int i=0; i<libri.size(); i++){
		if(libri.get(i).equals(libri)){
			trovato=true;
			return trovato;
		}
	}
	return trovato!=true? false:null;
}
Praticamente questo è un metodo che, in un ArrayList di stringhe, dovrebbe cercare una stringa presa in input e restituire true se c'è, altrimenti false;
il mio problema è che mi restituisce sempre falseee :( ...mi ci sono spremuto il cervello ma non sono proprio riuscito a trovare una soluzione ??? ...qualcuno può darmi qualche dritta?
Grazie mille! :)
"Il vantaggio di essere intelligenti è che ci si può comunque comportare da cretini, mentre per questi ultimi, fare il contrario è impossibile."
Avatar utente
ele_girasole
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 396
Iscrizione: giovedì 18 giugno 2009, 20:00

Re: [Java] Cercare una stringa in un ArrayList di stringhe

Messaggio da ele_girasole »

Codice: Seleziona tutto


if(libri.get(i).equals(libri))
Ciao,presumo che la stringa che devi cercare è libro giusto?

Codice: Seleziona tutto

public boolean cercaLibro(String libro)

invece tu nella condizione metti libri che da quanto ho capito è l'array,devi fare così (ma forse lo sai ti solo distratto)

Codice: Seleziona tutto

libri.get(i).equals(libro)   //libro=stringa
Il Vero Programmatore ha una casetta sull'albero binario di ricerca.
Avatar utente
Zoff
Moderatore Globale
Moderatore Globale
Messaggi: 33338
Iscrizione: mercoledì 10 ottobre 2007, 22:36

Re: [Java] Cercare una stringa in un ArrayList di stringhe

Messaggio da Zoff »

Perché non usare il metodo contains?

http://docs.oracle.com/javase/7/docs/ap ... .Object%29
Prima di aprire una discussione leggi le Guide, poi vedi se c'è un HowTo nel Wiki e fai una ricerca nel Forum!
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
Avatar utente
angelo.digiacomantonio
Prode Principiante
Messaggi: 67
Iscrizione: sabato 15 ottobre 2011, 13:07
Località: Città Sant'Angelo

Re: [Java] Cercare una stringa in un ArrayList di stringhe

Messaggio da angelo.digiacomantonio »

ele_girasole ha scritto:

Codice: Seleziona tutto


if(libri.get(i).equals(libri))
Ciao,presumo che la stringa che devi cercare è libro giusto?

Codice: Seleziona tutto

public boolean cercaLibro(String libro)

invece tu nella condizione metti libri che da quanto ho capito è l'array,devi fare così (ma forse lo sai ti solo distratto)

Codice: Seleziona tutto

libri.get(i).equals(libro)   //libro=stringa

Codice: Seleziona tutto

libri.get(i).equals(libro)   //libro=stringa
in questo codice volevo intendere che se l'elemento "i" dell'array list  è uguale alla stringa libro (che contiene il nome di un libro), restituisce true, altrimenti false; il problema è che mi restituisce sempre false...credo il problema sia in questa riga...
"Il vantaggio di essere intelligenti è che ci si può comunque comportare da cretini, mentre per questi ultimi, fare il contrario è impossibile."
Avatar utente
angelo.digiacomantonio
Prode Principiante
Messaggi: 67
Iscrizione: sabato 15 ottobre 2011, 13:07
Località: Città Sant'Angelo

[Risolto] Re: [Java] Cercare una stringa in un ArrayList di stringhe

Messaggio da angelo.digiacomantonio »

Ragazzi grazie millee!!!!
grazie a "ele girasole" per avermi fatto notare l'errore di distrazione e grazie a zoff per avermi suggerito il contains! :):)
grandissimi come sempree!! :)
"Il vantaggio di essere intelligenti è che ci si può comunque comportare da cretini, mentre per questi ultimi, fare il contrario è impossibile."
Avatar utente
elsco
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 350
Iscrizione: giovedì 19 giugno 2008, 12:46
Località: Napoli

Re: [Java] Cercare una stringa in un ArrayList di stringhe

Messaggio da elsco »

Ciao,
considerando che la cosa più giusta da fare te l'ha consigliata zoff, ti dico comunque la mia:
secondo me potevi implementare lo stesso metodo in questo modo:

Codice: Seleziona tutto

public boolean cercaLibro(String libro){
	for(String l : libri){
		if(libro.equals(l)){
			return true;
		}   
	}	
	return false;
}
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 1 ospite