Ir para conteúdo
  • 0

[Duvida] Comparar Strings


mabazi

Pergunta

Como faço para comparar StringA com StringB?

tendo em conta que StringA é sign.getLine(0).toString(); e StringB é getConfig().getString("placa.linha0"); e as duas usan codigo de cores

como faço uma comparação entre as duas?

 

OBS1: ja tentei usar replace("&", "§")

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

essa foi minha primeira tentativa ;--;

Faça um debugg e veja aonde para.

Você falou que mesmo usando replace, não adiantou, você usou replace nas duas strings ou apenas em uma?

Já verificou se o diretorio da config está certo?

Eu fiz um debugg e aqui funcionou perfeitamente: http://imgur.com/AHxuxJd

		Bukkit.broadcastMessage("[1]");
		String a = e.getLine(0).replace("&", "§");
		String b = getConfig().getString("placa.linha0").replace("&", "§");
		if(a.equalsIgnoreCase(b)){
			Bukkit.broadcastMessage("[2]");
			System.out.println("SIM");
		}else{
			Bukkit.broadcastMessage("[3]");
			System.out.println("Não");
		}
		Bukkit.broadcastMessage("[4F]");
	}

Caso não tenha resultados positivos, mostre seu método.

Editado por GabrielSm_
Link para o comentário
Compartilhar em outros sites


String a = e.getLine(0);
String b = m.getConfig().getString("Outra);
   if (a.equalsIgnoreCase(b)) {
       sout("É igual");
  }else{
      sout("Não é igual");
}

Tente esse método, não testei e fiz pelo navegador.

Link para o comentário
Compartilhar em outros sites


String a = e.getLine(0);
String b = m.getConfig().getString("Outra);
   if (a.equalsIgnoreCase(b)) {
       sout("É igual");
  }else{
      sout("Não é igual");
}

Tente esse método, não testei e fiz pelo navegador.

 

essa foi minha primeira tentativa ;--;

Link para o comentário
Compartilhar em outros sites

if(sign.getLine(linha).equalsIgnoreCase(getConfig().getString("placa.linha1").replace("&", "§")){
    // É igual
}

Faça o que esta a cima /\

 

se nao funcionar acredito que você nao tenha adicionado um @EventHandler ou nao registrou os eventos na Main.

 

Ou você nao esta pegando o bloco corretamente.

 

Jeito correto:

Sign sign = (Sign) e.getClickedBlock().getState();
Link para o comentário
Compartilhar em outros sites

Faça um debugg e veja aonde para.

Você falou que mesmo usando replace, não adiantou, você usou replace nas duas strings ou apenas em uma?

Já verificou se o diretorio da config está certo?

Eu fiz um debugg e aqui funcionou perfeitamente: http://imgur.com/AHxuxJd

		Bukkit.broadcastMessage("[1]");
		String a = e.getLine(0).replace("&", "§");
		String b = getConfig().getString("placa.linha0").replace("&", "§");
		if(a.equalsIgnoreCase(b)){
			Bukkit.broadcastMessage("[2]");
			System.out.println("SIM");
		}else{
			Bukkit.broadcastMessage("[3]");
			System.out.println("Não");
		}
		Bukkit.broadcastMessage("[4F]");
	}

Caso não tenha resultados positivos, mostre seu método.

Bukkit.broadcastMessage("[1]");
String a = pla.getLine(1).replace("&", "§");
String b = getConfig().getString("Placas.Clicado.Linha2").replace("&", "§");
if(a.equalsIgnoreCase(b)){
	Bukkit.broadcastMessage("[2]");
	System.out.println("SIM");
}else{
	Bukkit.broadcastMessage("[3]");
	System.out.println("Não");
}
Bukkit.broadcastMessage("[4F]");

ele enviou Nao ;-;

 

Faça o que esta a cima /\

 

se nao funcionar acredito que você nao tenha adicionado um @EventHandler ou nao registrou os eventos na Main.

 

Ou você nao esta pegando o bloco corretamente.

 

Jeito correto:

Sign sign = (Sign) e.getClickedBlock().getState();

esta tudo correto, porem na hora que chega na verificação ele para!, todas as verificações antecessores funcionam, mas as posteriores não

 

if(pla.getLine(0).equalsIgnoreCase(getConfig().getString("Placas.Clicado.Linha1").replace("&", "§")){

}

Link para o comentário
Compartilhar em outros sites

Já tentou usar o ChatColor.stripColor?

String placa = ChatColor.stripColor(sign.getLine(0));
String config = ChatColor.stripColor(getConfig().getString("placa.linha0"));

if (placa.equals(config)) { // se quiser ignorar o case das letras é só usar o equalsIgnoreCase
  // é igual.
}
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...