tengo un problema con el codigo de un programa.
el programa en primera tiene que pedir un numero de cadenas a introducir,
despues pide las cadenas y las guarda "nombre[]" des pues de que guardo todas las cadenas tiene que buscar una cadena dentro de las que estan guardadas en "nombre[]" para eso pide una cadena y la guarda en "buscar", al encontrar la cadena tiene que mostrar el mensaje de "cadena encontrada"
el problema que tengo es que cuando condiciono if (buscar==nombre[c]), aunque "buscar" sea igual a "nombre[c]", no muestra el mensaje..
espero me ayuden a encontrar en que estoy mal.
Código:
import java.io.*;
public class ordcade{
public static void main (String [] args)
{
BufferedReader br=new BufferedReader (new InputStreamReader(System.in));
int c=0;
String buscar;
try{
System.out.println("numero de cadenas a introducir ");
String cadena=br.readLine();
int cadint = Integer.parseInt(cadena);
String nombre[]=new String[cadint];
System.out.println("escribe las cadenas: ");
while (c<cadint){
cadena=br.readLine();
nombre[c] =(cadena);
c++;
}
System.out.println("cadena a buscar");
buscar=br.readLine();
c=0;
while (c<cadint){
System.out.println(nombre[c]);
c++;
}
c=0;
while (c<cadint){
//----------------------------------------------------------------------------------
// si la condicion se cumple en este if deberia de imprimir "variable encontrada"
//pero no hace nada, estoy bien en la sintaxis???..
if (buscar==nombre[c]){
System.out.println("cadena encontrada");
}
//---------------------------------------------------------------------------------
c++;
}
}catch(Exception e){
System.err.println("error"+e.getMessage());
}
}
}