Pessoal, estou fazendo uma calculadora simples… só que é o seguinte…
so tinha o campo 1 e o campo 2 digitava o numero 1 no campo 1 e digitava o numero 2 no campo 2 … depois era so clicar em algum dos botões + - / *
mas resolvi colocar os botoes 012345678910 ate ai tudo bem… quando eu click no botao, exibe no campo de texto, mas tem dois problemas…
1° quando eu clico no numero 1 ele exibe o 1 no campo texto, mas quando eu digito o numero 2 ele não fica 12 e sim apaga o numero 1 e exibe o 2 … ( como faz para ficar os dois numeros ?
2° Dúvida:
eu estou setando os valores no texto assim : campo1.setText(String.valueOf(2));
mas tem um problema, como eu tenho duas caixas de texto, campo1 e campo2 como faço pra digitar no determinado campo ? pq desse jeito que eu fiz ele só digita no campo 1 ou se eu colocar duas linhas dessas sendo assim:
campo1.setText(String.valueOf(2));
campo2.setText(String.valueOf(6));
ele vai jogar os valores nos dois campor de uma vez só
1 - Não insira os valores diretamente no elemento JTextField. Crie uma variável, pode ser uma String, que receba o valor digitado.
Para concatenar os valores, pode fazer assim:
String valorDigitado = "";
//actionPerformed
valor += String.valueOf(2);
2 - Sim, mas não entendo por qual motivo uma calculadora possui 2 campos para digitação…
a 2° como vc disse ai em cima, eu coloquei dois campos pq faz o calculo dos dois…
ou então como posso fazer para que eu faça o calculo na mesma linha ? assim : 23 + 49
como vou fazer pra pegar o número 23 depois fazer a soma com o 49
Variáveis, meu amigo.
Para uma calculadora simples, utilize 1 variável para manter os dados e mostrá-los no textfield, 1 para quando acionar um comando matemático (+ - * /) e guardar o primeiro valor.
Opcionalmente, utiliza uma terceira para o segundo valor e uma quarta para o resultado (desnecessário, mas se quiser).
Aí basta colocar o resultado na String novamente (não esqueça de limpar esta variável quando acionar o comando matemático e ao acionar =)
mas o comando matemático vai ficar como string ne não ? assim: “+”
total = n1 "+" n2;
como faço essa parte?
Você pode criar uma String apenas para exibir os dados.
Para manter os números enquanto executa, pode utilizar variáveis numéricas (como long ou double, pois as operações podem conter pontos flutuantes).
Quando clicar sobre um botão que representa operação matemática, ao invés de associar um valor à String, simplesmente habilite a segunda variável para receber os dados, quando clicar em igual (ou outra operação) realiza a conta.