Necesito urgentemente algún código de subprograma de Java
importar java.awt.*;
importar java.awt.event.*
importar javax.swing.*; >Calculadora de clase pública extiende JFrame {
contenedor de contenedor privado;
diseño de GridBagLayout privado
restricciones de GridBagConstraints privado
diseño de campo de texto privado; ;
último comando de cadena privada;
resultado doble privado;
inicio booleano privado;
Calculadora pública() {
super("Calculadora");
container=getContentPane();
layout=new GridBagLayout();
container.setLayout(diseño)
restricciones=nuevas GridBagConstraints();
inicio=true
resultado=0;
displayField=new JTextField(20);
displayField.setHorizontalAlignment(JTextField.RIGHT);
constraints.gridx=0; >constraints.gridy=0;
constraints.gridwidth=4;
constraints.gridheight=1;
constraints.fill=GridBagConstraints.
p>constraints.gridheight=1;
constraints.fill=GridBagConstraints.BOTH; p>
constraints.weightx=100;
constraints.weighty=100;
layout.setConstraints(displayField,constraints);
container.add (displayField);
ActionListener insert = new InsertAction(); p>Comando ActionListener = new CommandAction();
addButton("Retroceso",0,1,2,1,insert
addButton("CE",2,1); ,1,1,insertar);
addButton("C",3,1,1 ,1,insert);
addButton("7",0,2,1); ,1,insertar);
addButton("8",1,2,1,1 ,insert
addButton("9",2,2,1,1); ,insertar);
addButton("/",3,2,1,1,comando
addButton("4);
",0,3,1,1,insertar);
addButton("5",1,3,1,1,insertar);
addButton("6", 2,3,1,1,insertar);
addButton("*",3,3,1,1,comando);
addButton("1",0, 4,1,1,insertar);
añadirBotón("2",1,4,1,1,insertar
añadirBotón("3",2,4, 1,1,insertar);
añadirBotón("-",3,4,1,1,comando);
añadirBotón("0",0,5,1, 1,insertar);
addButton("+/-",1,5,1,1,insert);
addButton(".",2,5,1, 1,insertar);
addButton("+",3,5,1,1,comando);
addButton("=",0,6,4,1, comando);
setSize(300,300);
setVisible(true);
}
addButton vacío privado (etiqueta de cadena, int). fila, int columna, int con, int altura, oyente ActionListener) {
Botón JButton=nuevo JButton(etiqueta);
constraints.gridx=fila; >constraints.gridy=columna;
constraints.gridwidth=con;
constraints.gridheight=altura
constraints.fill=GridBagConstraints
p>
constraints.gridheight=altura;
constraints.gridwidth=con; p>
button.addActionListener(oyente);
layout.setConstraints(botón,restricciones);
container.add(button);
}
la clase privada InsertAction implementa ActionListener {
actionPerformed public void (evento ActionEvent); ) {
String input=event.getActionCommand();
if (inicio) {
displayField.setText(""); p>start=false;
if(input.equals("+/-" ))
displayField.setText(displayField.getText()+"-"); p>
}
if(!input.equals("+/- ")) {
if(input.equals("Retroceso")) {
Cadena str=displayField.getText();
if(str. length()>0)
displayF
ield.setText(str.substring(0,str.length()-1));
}else if(input.equals("CE")||input.equals("C")) {
displayField.setText("0");
start=true;
}else
displayField.setText(displayField. getText()+input);
}
}
}
la clase privada CommandAction implementa ActionListener {
public void actionPerformed(ActionEvent evt) {
String command=evt.getActionCommand();
if(start) {
lastCommand=command ; p>
lastCommand=comando;
p>
}else {
calcular(Double.parseDouble(displayField.getText())); p>últimoCommand=comando;
start=true
}
}
}
vacío público; calcular(doble x) {
if (lastCommand .equals("+")) resultado+= x
si no (lastCommand.equals("-")) resultado-=; x;
else if (lastCommand.equals( "*")) resultado*=x;
else if (lastCommand.equals("/")) resultado/=x;
else if (lastCommand.equals("= ")) resultado=x
displayField.setText(""+ resultado); p>
public static void main(String []args) {
Calculadora calculadora=nueva Calculadora();
calculadora.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE
}
}