Problemas con java

Buenas tardes. Estoy estudiando Informática de Sistemas por la UNED y tan solo me quedan 2 asignaturas para acabar. Tengo que hacer una practica en java para poder aprobarlas. El problema es que no tengo ni idea de java porque nunca lo había utilizado y necesitaría una poca de ayuda. Mi primer problema es que tengo que introducir los datos de dos maneras: mediante un fichero de texto, que de momento no tengo duda, y mediante el teclado. Mi código para esta segunda opción es:
BufferedReader br2 = new BufferedReader (new InputStreamReader (System.in));
String linea = br2.readLine();
while (linea != null){
StringTokenizer st = new StringTokenizer (linea, "");
while (st.hasMoreTokens()){
String s = st.nextToken(); //Vamos obteniendo cada trozo.
System.out.println(s);
}
linea = br2.readLine();
El problema es que empiezo a meter datos, son lineas con números y asteriscos pero no se como parar de meter datos. Tendría que dejar de leer en el momento en el que se introdujera un signo más pero he probado de mil manera y no deja de leer. ¿Podrías echarme una mano?
Muchas gracias y un saludo.
Respuesta
1
Tal y como lo tienes es normal que no haga nada, de hecho lo que debería pasar es que te coge la ristra que introduces y te la muestra por pantalla, ¿no? Ahora vamos a tu problema... tal y como habrás visto hasta que no pulsas enter la ristra no se evalúa, ¿así qué imagino que tu metes una ristra con todo lo que quieras y después quieres mostrar sólo hasta el signo más no? Corrígeme si no te he entendido.
Bien... en la línea  String s = st.nextToken(); //Vamos obteniendo cada trozo. Tienes la ristra que has introducido completa, así que yo lo que haría es preguntar si tiene un signo más para eso está la operación contains, para llamarla tienes que hacer s.contains("+") <-- o cualquier otro símbolo. Si no tiene un +, no hay más problemas y si hay más en el interior del if averiguas su posición y cortas la String. Te recomiendo que te mires un poco la documentación de la clase String en la siguiente página.  http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html
No olvides cerrar la pregunta si ya la duda está resuelta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas