Comparar letras

Galera responde logo por favor ok.
e o seguinte, estou fazendo um programa de digitação em java ate ai blz, só que não consigo comparar as letras, tipo o programa pede para a pessoa digitar uma letra ela digita ok, só que essa mesma letra ta em outros cantos do programa, criei vários ifs um if anula o outro me ajuda e meu, valeu pela atenção.
ps: tem algum programa de digitação feito em java de codigo aberto??

da uma olhada ai.

String Sequencia;
        int acertos = 0;
        Character Sequencia1 = evt.getKeyChar();
        if (String.valueOf(Sequencia1).equals("a")) {
           Seta.setVisible(true);
           Seta.setLocation(330,30); 
           
        }
        
        else{
        }
        
        if (String.valueOf(Sequencia1).equals("s")) {
           Seta.setVisible(true);
           Seta.setLocation(500,30);
        }
        else{
        }
        
        if (String.valueOf(Sequencia1).equals("d")) {
           Seta.setVisible(true);
           Seta.setLocation(660,30); 
        }
        else{
        }
        if (String.valueOf(Sequencia1).equals("f")) {
           Seta.setVisible(true);
           Seta.setLocation(820,30); 
        }
        else{
        }
       
        if (String.valueOf(Sequencia1).equals(" ")) {
           Seta.setVisible(true);
           Seta.setLocation(170,30);
           btn_Ç.setVisible(true);
           btn_L.setVisible(true);
           btn_K.setVisible(true);
           btn_J.setVisible(true);
           btn_A.setVisible(false);
           btn_S.setVisible(false);
           btn_D.setVisible(false);
           btn_F.setVisible(false);

Oi, lathives23.

Primeiro, por favor, dá uma lida nesse tópico: Você é novo no GUJ? Vai criar um tópico e colar seu código-fonte? Leia aqui antes, por favor!

E aí então, arruma o seu código no post.

valew

Esqueci o codigo, queria uma luz de como fazer esse programa de digitação em java me ajuda

alguma ideia

tguerra

[quote=lathives23]alguma ideia

tguerra [/quote]

Explica exatamente o que tu precisas pra eu ver se posso ajudar.

Por favor, ao abrir tópicos procure dar um título descritivo. O título “me ajuda” não dá qualquer dica sobre o conteúdo ou dúvida, e dificulta tanto para quem vai te ajudar, quanto para quem irá consultar o GUJ no futuro.
Além disso, use a tag code, como tguerra explicou e procure ser claro na sua dúvida.

Finalmente, procure ler com a atenção a descrição dos fóruns antes de postar. Seu tópico aparentemente é de interface gráfica e não de Java Básico.

Bom dia lathives23.
Está confuso entender seu problema.
Mas vai uma dica.

[code]

if(condição){
// Lógica
}else{
// vazio
}
if(condição){
// Lógica
}

// Seria Melhor fazer algo:
if(condição){
// Lógica
}else if(condição){
//Lógica
} [/code]

Nesse caso você pode implementar enums no seu sistema, pode ser um conceito novo pra você, caso não esteja familiarizado com a linguagem, mas não custa nada incluí-lo na lista de boas práticas e começar a praticar a partir de agora, aos poucos, pra ir pegando a manha.

Pra ir pegando os conceitos, como você faz comparações de letras, poderia criar um enum que mantenha todos os possíveis caracteres, ex:

public enum LetrasValidas {

	a('a'),
	s('s'),
	f('f'),
	espaco(' ');

	private final char	letra;

	private LetrasValidas(char letra) {
		this.letra = letra;
	}

	public char getLetra() {
		return letra;
	}

	public static boolean exists(char novaLetra) {
		for (LetrasValidasletra : LetrasValidas.values()) {
			if (letra.letra == novaLetra) {
				return true;
			}
		}
		return false;
	}
}

E nas partes que precisar testar basta apenas um único if:

if (LetrasValidas.exists(Sequencia1)) {  
    Seta.setVisible(true);  
    Seta.setLocation(330,30);   
}  

Perceba que na primeira linha foi declarado um enum e não class, mas aprecie com moderação pra não se confundir muito com o conceito.

Outra vantagem de se usar enum é que modificando/incluindo novas letras (por exemplo a letra A maiúscula passa a ser utilizada), você precisa apenas modificá-la/incluí-la no enum:

a('a'),
A('A'),
b('b'),
B('B');
// ... e assim por diante

Como o java é case sensitive ele saberá diferenciar o ‘a’ de ‘A’ o ‘b’ de ‘B’ e por ai vai.

Espero ter ajudado.