Erro ou apenas um bug do Eclipse?

02/10/2018

3

Olá pessoal, eu sou novo em JAVA (trainee), e fiz um código que esta apresentdo um problema, não sei se é um erro, mais na rotina só passa pelo comando "else", o que seria? Segue o trexo do código onde esta ocorrendo o problema. Só para saberem, existem todos os dados, e coloquei um display (mensagem) para saber por onde esta passando. Tudo foi desenvolvido no Eclipse.

/** ******************************************************************
 * Method mEstado
 * @param pSigla
 * @return Estado
 */
public static String mEstado(String pSigla) {
    	Variaveis var = new Variaveis(); // Declaração das variaveis
    	char xTab;
    	int xLen;
    	xTab = (char)9;
    	var.Sigla = var.Branco;
    	var.Texto = var.Branco;
    	var.Estado = pSigla;
	var.x = 0;
	for (var.x=0; var.x<26; var.x++) {
		var.Sigla = var.Estados[0][var.x];
/**
 * Apenas uma mensagem para saber por onde esta passando
 */
		xLen = var.Estados[1][var.x].length();
		if (xLen > 13) {
			var.Texto = var.x + " " + xTab + var.Sigla + " (" + var.Estados[1][var.x] + ")" + xTab + "= " + pSigla + " " + xTab;
		} else {
			var.Texto = var.x + " " + xTab + var.Sigla + " (" + var.Estados[1][var.x] + ")" + xTab + xTab + "= " + pSigla + " " + xTab;
		}
/**
 * Onde ocorre o problema
* Neste ponto sempre sai pelo ELSE, mais existe o item que estou procurando
* Eu procuro por "SP", e o mesmo existe na matriz
 */
		if (var.Sigla == pSigla){
			var.Estado = var.Estados[1][var.x];
			System.out.println(var.Texto + "Achou!"); // Exibe a mensagem dizendo que achou e o ponto
			break;
		} else {
			System.out.println(var.Texto + "Não Achou..."); // Exibe a mensagem dizendo que NÃO achou
		} // if pSigla
	} // for var.x
	return var.Estado; // Retorno do metódo mEstado
} // method mEstado
Responder

Post mais votado

02/10/2018

Russonic,

Não entendi esse seu objeto "Variáveis", mas tenta assim:

if (var.Sigla.equalsIgnoreCase(pSigla){
....
Responder

Mais Posts

Obrigado pela dica! Funcionou!
E sobre "Variáveis", eu criei uma "class" que continha variáveis, desta forma não precisei ficar copiando, basta apenas por o prefixo (objeto), como por exemplo uma variável de texto que utilizo em vários lugares, ficando desta forma: "var.Texto".
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários. Para saber mais sobre o uso de cookies,
consulte nossa política de privacidade. Ao continuar navegando em nosso site, você concorda com a nossa política.

Aceitar