Bueno, estoy desperate, porque no tengo ni idea del problema que me surge al compilar la clase con el BlueJ.
........................................................................................................
import nsIO.*;
import java.io.*;
import java.util.*;
import excepciones.*;
import modelos.*;
public class TestTraductor{
static int menu(input t){
int op;
System.out.println();
System.out.println(" M E N U ");
System.out.println(" - - - - - - - - - - - - - - -- - - - - - - - - -");
System.out.println("1.-Traducir frase ");
System.out.println("2.-Cambiar de Diccionario");
System.out.println("3.-Caracteristicas del Diccionario actual");
System.out.println("4.-Buscar una Entrada por clave en el Diccionario actual");
System.out.println("5.-Insertar una nueva Entrada en el Diccionario actual");
System.out.println("6.-Eliminar una Entrada por clave del Diccionario actual");
System.out.println("7.-Guardar el Diccionario actual");
System.out.println("8.-Guardar ORDENADO el Diccionario actual");
System.out.println("9.-Buscar las tres entradas sucesoras a una clave dada");
System.out.println("10.-Salir");
// lectura de opci�n
do{
System.out.print(" Elija una de las opciones (1,2,3,4,5,6,7,8,9,10): ");
op = t.readint();
} while (op <1 || op >10);
return op;
}// fin de menu
public static void main(String args[]){
input teclado = new input();
Traductor t = new Traductor();
int opcion;
do{
opcion = menu(teclado);
switch (opcion){
case 1: // traducir PALABRA A PALABRA una frase dada
{
System.out.println(" Por favor, introduzca la frase que desea traducir");
String frase = teclado.readline();
System.out.println("Frase a traducir: "+frase);
try{
System.out.println("Frase traducida: "+t.traduccion(frase));
}catch (Exception e) {System.out.println(e);}
}
break;
case 2: // cambiar el Diccionario actual por otro
{
System.out.println(" Introduzca el nombre del fichero que contiene el nuevo Diccionario");
String nombreFichero = teclado.readline();
try {
t.cambiarDiccionario(nombreFichero);
}
catch(FileNotFoundException e){System.out.println(e);}
}
break;
case 3: // consultar las caracter�sticas del Diccionario actual
{
System.out.println(t.caracteristicasDiccionario());
}
break;
case 4: // buscar una Entrada del Diccionario actual
{
System.out.println(" Por favor, introduzca la palabra a buscar");
String clave = teclado.readline();
Entrada conClave = new Entrada(clave.toLowerCase().trim());
try{
Entrada buscada = t.buscarEnDiccionario(conClave);
System.out.println(" Encontrada la Entrada del Diccionario "+buscada);
} catch (ElementoNoEncontrado e){
System.out.println(" Lo siento, el Diccionario NO posee una Entrada con clave "+clave);
}
}
break;
case 5: // insertar una Entrada al Diccionario actual
{
boolean f=false;
System.out.println(" Por favor, introduzca la palabra a traducir");
String clave = teclado.readline();
System.out.println(" Por favor, introduzca la traduccion de "+clave);
//Completar ...
String valor=teclado.readline();
Entrada nueva=new Entrada(clave.toLowerCase(), valor.toLowerCase());
try{
t.insertarEnDiccionario(nueva);
}catch (Exception e)
{ System.out.println(e);
f=true;
}
if (!f) System.out.println("Insercion correcta");
}
break;
case 6: // eliminar una Entrada del Diccionario actual
{
boolean f=false;
System.out.println(" Por favor, introduzca la palabra a eliminar");
//Completar ...
String clave=teclado.readline();
Entrada aux=new Entrada(clave);
try{
t.eliminarDelDiccionario(aux);
}catch (Exception e)
{ System.out.println(e);
f=true;
}
if (!f) System.out.println("Se ha eliminado correctamente");
}
break;
case 7: // guardar Diccionario actual en un fichero de texto de Entrada's
{
try{
System.out.println(" Indique el nombre del fichero donde guardar el Diccionario actual");
String nombreFichero = teclado.readline();
t.guardarDiccionario(nombreFichero);
System.out.println(" El diccionario ha sido guardado en "+nombreFichero);
}catch (FileNotFoundException e) { System.out.println(e);}
}
break;
case 8: // guardar ORDENADO el Diccionario actual en un fichero de texto de Entrada's
{
try{
System.out.println(" Indique el nombre del fichero donde guardar ORDENADO el Diccionario actual");
String nombreFichero = teclado.readline();
t.guardarDiccionarioOrdenado(nombreFichero);
}catch (FileNotFoundException e) { System.out.println(e);}
}
break;
case 9: //buscar las tres entradas sucesoras a una clave dada
{
try{
System.out.println("Dame la clave para las entradas sucesoras:");
String clave= teclado.readline();
Entrada d1= sucesor(clave);
Entrada d2= sucesor(d1);
Entrada d3= sucesor(d2);
System.out.println(" Las Entrada sucesoras son "+d1 +d2 +d3);
}catch (FileNotFoundException e) {System.out.println(e);}
}break;
case 10: System.out.println(" Hasta pronto.");
}
}
while(opcion != 10);
}
}
..................................................................................................
El error me lo da en la línea en negrita, bueno, y en las siguientes que usan ese método, aunque para ahí. Me da este error:
cannot resolve symbol - method sucesor (java.lang.String)
el método sucesor calcula el nodo sucesor a uno dado via la clave que se le pasa. El tema está en que la práctica es un tocho de clases, test traductor, traductor, ABBdiccionarioBilingue, diccionarioBilingue etc... y luego en otro proyecto están las clases ABB, ABBDiccionario, Diccionario, donde está implementado el método. Estas van heredandolo etc.... y en teoría no hay conflictos porque todas compilan bien.
Si algún gurú del foro me puede ayudar, es que tengo el exámen de prácticas el jueves al mediodía, y tengo que solucionar la gilipoyez esta. Si el error está en test traductor, y no me he dado cuenta es posible porque voy loco ya, si no conseguis verlo ahí, o quereis os puedo pasar todo el directorio de trabajo para que lo veais con el bluej o lo que querais, por si está en otro paquete y tpc me he dado cuenta.
Ayuda mamaaaaaaa