Buscando código simple de calculadora de suma, resta, multiplicación y división escrito en java
Importar Java.awt.*;
Importar Java.awt.event.*;
La calculadora de clase pública extiende JFrame Implement ActionListener
{
DotExist booleano privado, operado, igualado//Variables booleanas para ayudar a la operación
Número doble almacenado privado//Resultado actual
Private char lastOperator//Representa el operador anterior.
Operación privada de JTextField; //columna de resultados
Punto JButton privado, signo más, signo menos, multi, div, sqrt, igual, cambioPN, claro//operador
Número de JButton[] privado; //Número
//Generador
Calculadora pública()
{
setTitle( "Calculadora");
//Inicializar variable
dotExist = false//Indica si el número actual tiene punto decimal.
operated = false //Indica si se presiona algún operador.
Equals=false; //Indica si se presiona el signo igual.
número almacenado = 0;
últimoOperador = '? ';
//Inicializar variables de ventana
operación = new JTextField(" 0 ");
operación configurada editable(false);
números = nuevo JButton[10];
for(int I = 0;i<10;i++)
números[I]= nuevo JButton("+I) ;
punto = nuevo JButton(" . ");
más = nuevo JButton("+");
MINUS = nuevo JButton("-" );
multi = nuevo JButton(" * ");
div = nuevo JButton("/");
sqrt = nuevo JButton("√ ") ;
equal = new JButton(" = ");
cambiar pn = new JButton(" ");
clear = new JButton(" AC " );
//Coloque el objeto de ventana en la ventana.
diseño de gridbag = nuevo diseño de gridbag();
getContentPane().
setLayout(diseño);
addComponent(diseño, operación, 0, 0, 4, 1
addComponent(diseño, número [1], 1, 0, 1, 1);
addComponent(diseño, número [2], 1, 1, 1, 1
addComponent (diseño, número [3], 1, 2, 1, 1);
addComponent(diseño, número [4], 2, 0, 1, 1
addComponent (diseño, número [5], 2, 1, 1, 1);
addComponent(diseño, número [6], 2, 2, 1, 1
addComponent (diseño, número [7], 3, 0, 1, 1);
addComponent(diseño, número [8], 3, 1, 1, 1
addComponent (diseño, número [9], 3, 2, 1, 1); );
addComponent(diseño, punto, 4, 0, 1, 1);
addComponent(diseño, número [0], 4, 1, 1, 1); /p>
addComponent(diseño, sqrt, 4, 2, 1, 1
addComponent (diseño, signo más, 1, 3, 1, 1); >addComponent(diseño, menos, 2, 3, 1, 1);
addComponent(diseño, multi, 3, 3, 1, 1);
addComponent(diseño, div); , 4, 3, 1, 1);
addComponent(diseño, igual, 5, 0, 2, 1);
addComponent(diseño, cambioPN, 5, 2, 1); , 1);
addComponent(layout, clear, 5, 3, 1, 1);
}
//Método para reaccionar a los botones
p>Operación pública no válida ejecutada (evento de operación e)
{
JButton BTN = (JButton)e .
if (. btn == borrar)
{
operación settext(" 0 ");
dotExist = false
número almacenado = 0 ;
últimoOperador = '? ';
}
si no (btn == igual)
{
Operación (' = ');
Igual = verdadero;
}
si no (btn == plus)
{
Operación ('+ ');
Igual = false;
}
si no (btn == menos)
{
Operación ('-');
Igual = false;
}
si no (btn == multi)
{
Operación (' * ');
Igual = false;
}
si no (btn == div)
{
Operación('/');
Equals=false;
}
si no ( btn == cambioPN)
{
Operación(' p ');
Operación(' = ');
Igual a = Verdadero;
}
else if (btn == sqrt)
{
Operación(' s ');
Operación(' = ');
Igual=Verdadero;
}
Otro
{
Si (igual)
número almacenado = 0;
for(int I = 0;i<10;i++)
if (btn == números[i])
{ p>
if (operación.getText().Equal(" 0 "))
operación .settext("+I);
else if(!tiene operación)
operación . settext(operación . gettext()+I);
Otros
{
operación settext(" +I. );
operado = false
}
}
if(BTN = = punto & &!dotExist )
{
operación . settext(operación . gettext()+".");
dotExist = true
}
}
}
//Método de operación
Operación vacía privada (operación de facturación)
{
doble número actual = doble valor de(operación. gettext()).
valor doble();
if (últimoOperador == '?')
Númeroalmacenado = NúmeroActual
si no (últimoOperador == '+') p> p>
número almacenado+= número actual;
else if (lastOperator == '-')
número almacenado-= número actual;
else if (lastOperator == '* ')
Númeroalmacenado * = Númeroactual
else if (lastOperator == '/')
Número almacenado/= número actual;
else if (lastOperator == 'p ')
número almacenado * =-1;
else if (lastOperator == 's ' )
número almacenado = math . sqrt(número actual);
else if (último operador = = ' = ' & amp; & amp es igual)
NúmeroAlmacenado = NúmeroActual
operación settext("+número almacenado);
operado = verdadero
últimoOperador =operador;
}< / p>
//Cómo usar rápidamente GridBagLayout
private void add Component (diseño de gridbag, componente de componente, fila entera, columna entera, ancho entero, altura entera)
{
Restricciones de GridBagConstraints = nuevas Constraints de GridBag();
Restricciones = Restricciones de GridBag Ambos
Restricciones , 2);
restricciones .gridx =
restricciones . .gridy = fila
constraints.gridwidth = ancho
constraints.gridheight = alto
layout.setConstraints(componente, restricción);
Instancia del componente JButton)
(componente (JButton)). addActionListener(este);
getContentPane(). Agregar (componente);
}
El método principal inicializa y muestra la ventana.
Public static void main(String[] args)
{
Calculadora calc = new Calculator();
calc. (290, 400);
calc conjunto visible(verdadero);
}
}
.