estou estudando java entao me desculpem.
fiz uma classe “Teclado” que chama a “LeTeclado”
na realidade o objetivo e ler a digitacao do teclado e mostrar na tela
ate que o digitador digite a palavre “fim”
pois e
tudo funciona aparentemente bem, porem, mesmo a classe retornando a palavre fim
nao consigo sair do loop na classe “Teclado”
observem as duas:
// ------------------Classe Teclado ---------------------------------------------------------------
public class Teclado {
public static void main(String[] args) {
String s = “”;
LeTeclado Tec = new LeTeclado();
/* observem o loop abaixo
-
a classe Leitura retorna a string do teclado
-
com os dois caracteres no final de cr lf
-
retiro essses dois caracteres para poder finalizar o loop
-
mas mesmo assim nao sai do loop
-
e como se o s continuasse diferente da palavra “fim”
-
duro e que eu mostro o retorno e vem a palavra “fim”
-
nao sei porque nao sai do loop */ while (s != “fim”) { s = Tec.Leitura();
s = s.substring(0, (s.length() - 2)); //tire 13 e 10 no final System.out.println(s + " " + s.length()); // mostra o fim digitad // junto com tam 3 } System.out.println("final da aplicacao");
}
}
// ----------------- Classe LeTeclado
import java.io.*;
public class LeTeclado {
public String Leitura() {
int a = 0;
String s = "";
InputStream t = System.in;
System.out.println("Inicio");
while (a != 10) {
try {
a = t.read();
System.out.println(a);
} catch (Exception e) {
System.out.println(e);
}
s = s + (char) a;
}
return s;
}
}
ja coloquei um if (s == “fim”) e tambem nao deu certo. mesmo que mostrando na tela que realmente veio a palavre “fim” a comparacao nao funciona
se alguem poder me ajudar
agradeco desde ja
