「java按钮加减」Java添加按钮

博主:adminadmin 2023-01-28 03:24:07 461

本篇文章给大家谈谈java按钮加减,以及Java添加按钮对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

用Java编写实现加减乘除,界面如下

用Java编写的实现加减乘除的程序如下

import java.awt.BorderLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JButton;

import javax.swing.JComboBox;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JOptionPane;

import javax.swing.JPanel;

import javax.swing.JTextField;

public class Calculator extends JFrame implements ActionListener{

 JLabel jl1=new JLabel("第一个数");

 JLabel jl2=new JLabel("运算符");

 JLabel jl3=new JLabel("第二个数");

 JLabel jl4=new JLabel("结果:");

 JTextField jtf1=new JTextField(8);

 JTextField jtf2=new JTextField(8);

 JTextField jtf3=new JTextField(8);

 String a[]={"+","-","*","/"};

 JComboBoxString jcb=new JComboBoxString(a);

 JButton jb1=new JButton("计算");

 JButton jb2=new JButton("退出");

 JPanel jp=new JPanel();

 Calculator(){

  setTitle("计算器");

  jb1.addActionListener(this);

  jb2.addActionListener(this);

  jp.setLayout(null);

  jl1.setBounds(30, 30, 80, 20);

  jl2.setBounds(110, 30, 80, 20);

  jl3.setBounds(190, 30, 80, 20);

  jtf1.setBounds(30, 60, 70, 20);

  jcb.setBounds(110, 60, 70,20);

  jtf2.setBounds(190, 60, 70, 20);

  jl4.setBounds(80, 110, 40, 20);

  jtf3.setBounds(110, 110, 100, 20);

  jb1.setBounds(60, 160, 60, 25);

  jb2.setBounds(170, 160, 60, 25);

  jp.add(jl1);jp.add(jl2);jp.add(jl3);

  jp.add(jtf1);jp.add(jcb);jp.add(jtf2);

  jp.add(jl4);jp.add(jtf3);

  jp.add(jb1);jp.add(jb2);

  add(jp,BorderLayout.CENTER);

  setSize(300, 300);

  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

  setLocationRelativeTo(null);

  setVisible(true);

 }

 public static void main(String[] args) {

  new Calculator();

 }

 @Override

 public void actionPerformed(ActionEvent ae) {

  if(ae.getSource()==jb1){

   String c=((String) jcb.getSelectedItem()).trim();

   if(jtf1.getText().trim().equals("")){

    JOptionPane.showMessageDialog(this, "第一个数不能为空");

    jtf1.requestFocus();

    return;

   }

   if(jtf2.getText().trim().equals("")){

    JOptionPane.showMessageDialog(this, "第二个数不能为空");

    jtf2.requestFocus();

    return;

   }

   double num1=Double.parseDouble(jtf1.getText().trim());

   double num2=Double.parseDouble(jtf2.getText().trim());

   double num3 = 0;

   switch(c){

    case "+":num3=num1+num2;break;

    case "-":num3=num1-num2;break;

    case "*":num3=num1*num2;break;

    case "/":

     if(num2==0){

      JOptionPane.showMessageDialog(this, "除数不能为0");

      jtf2.requestFocus();

      return;

     }else{

      num3=num1/num2;

      break;

     }

   }

   jtf3.setText(String.valueOf(num3));

  }

  if(ae.getSource()==jb2){

   System.exit(0);

  }

 }

}

运行结果

java加减乘除程序。public void actionPerformed(ActionEvent e) 这个下面的我知道要分配下

帮你改好了。现在在前两个框输入数字之后,点击加减乘除按钮之一,label1会跟着变成加号或减号等,并作出正确的计算,结果显示在TextField3中。

添加的地方见注释~

package tt.thread;

import java.applet.Applet;

import java.awt.Button;

import java.awt.Label;

import java.awt.TextField;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

public class AddSubMulDiv extends Applet implements ActionListener {

Label label1 = new Label("+");

Label label2 = new Label("=");

TextField field1 = new TextField(6);

TextField field2 = new TextField(6);

TextField field3 = new TextField(6);

Button button1 = new Button("add");

Button button2 = new Button("subtract");

Button button3 = new Button("multiply");

Button button4 = new Button("divide");

public void init() {

add(field1);

add(label1);

add(field2);

add(label2);

add(field3);

add(button1);

add(button2);

add(button3);

add(button4);

button1.addActionListener(this);

button2.addActionListener(this);

button3.addActionListener(this);

button4.addActionListener(this);

}

public void actionPerformed(ActionEvent e) {

String buttonText = ((Button) e.getSource()).getLabel();

System.out.print("按钮" + buttonText);

if (e.getSource().equals(button1)) { //判断本次点击事件点击的是哪个按钮,作出相应操作

int x = Integer.parseInt(field1.getText()) + Integer.parseInt(field2.getText());

label1.setText("+"); //修改加减乘除号的显示

field3.setText(Integer.toString(x)); //结果显示在第三个文本框

}

if (e.getSource().equals(button2)) {

int y = Integer.parseInt(field1.getText()) - Integer.parseInt(field2.getText()); //点击减号的时候,做减法

label1.setText("-");

field3.setText(Integer.toString(y));

}

if (e.getSource().equals(button3)) {

int z = Integer.parseInt(field1.getText()) * Integer.parseInt(field2.getText());//点击乘号的时候,做乘法

label1.setText("*");

field3.setText(Integer.toString(z));

}

if (e.getSource().equals(button4)) {

int i = Integer.parseInt(field1.getText()) / Integer.parseInt(field2.getText());//点击除号的时候,做除法

label1.setText("/");

field3.setText(Integer.toString(i));

}

}

}

用java怎样编写加减乘除,从键盘输入,例如:1+2按回车之后可以运算,小数整数都可以

public static void main(String[] args){

Scanner sc=new Scanner(System.in);

System.out.println("请输入第一个数:");

double n1 = sc.nextDouble();

System.out.println("请输入运算符:");

String s = sc.next();

System.out.println("请输入第二个数:");

double n2 = sc.nextDouble();

if(s.equals("+")){

System.out.print(n1+"+"+n2+" = "+(n1+n2));

}else if(s.equals("-")){

System.out.print(n1+"+"+n2+" = "+(n1-n2));

}else if(s.equals("*")){

System.out.print(n1+"*"+n2+" = "+(n1*n2));

}else if(s.equals("/")){

if(n2==0){

System.out.println("除数不能等于0");

}else{

System.out.print(n1+"/"+n2+" = "+(n1/n2));

}

}else{

System.out.println("运算符输入错误,请重新输入。");

}

}

如何使用Java对象语言编写一个加减乘除计算器要有代码

下面文件名要为:JiSuanQi.java

import java.awt.*;

import java.awt.event.*;

public class JiSuanQi

{

String s="",s1=null,s2=null;

Frame f=new Frame("计算器");

TextField tf=new TextField(30);

Panel p1=new Panel();

Panel p2=new Panel();

Panel p3=new Panel();

Button bt1=new Button("=");

Button bt2=new Button("删除");

Button[] bt=new Button[16];

int id=0;

public static void main(String[] args)

{

new JiSuanQi().init();

}

public void init()

{

f.setBackground(new Color(85,247,253));

f.setLayout(new BorderLayout(4,4));

p2.setLayout(new GridLayout(4,4,4,4));

p3.setLayout(new BorderLayout(4,4));

f.setResizable(false);

f.add(p1,BorderLayout.NORTH);

f.add(p2);

p3.add(bt2,BorderLayout.NORTH);

p3.add(bt1);

p1.add(tf);

f.add(p3,BorderLayout.EAST);

String[] b={"1","2","3","+","4","5","6","-","7","8","9","*","0",".","复位","/"};

for(int i=0;i16;i++)

{

bt[i]=new Button(b[i]);

p2.add(bt[i]);

}

bt[0].setForeground(Color.blue);

bt[1].setForeground(Color.blue);

bt[2].setForeground(Color.blue);

bt[4].setForeground(Color.blue);

bt[5].setForeground(Color.blue);

bt[6].setForeground(Color.blue);

bt[8].setForeground(Color.blue);

bt[9].setForeground(Color.blue);

bt[10].setForeground(Color.blue);

bt[12].setForeground(Color.blue);

bt[13].setForeground(Color.blue);

bt[3].setForeground(Color.red);

bt[7].setForeground(Color.red);

bt[11].setForeground(Color.red);

bt[15].setForeground(Color.red);

bt[14].setForeground(Color.red);

bt1.setForeground(Color.red);

bt2.setForeground(Color.red);

f.pack();

f.setVisible(true);

f.addWindowListener(new WindowAdapter()

{

public void windowClosing(WindowEvent e)

{

System.exit(0);

}

}

);

bt[0].addActionListener(new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

s+=1;

s2+=1;

tf.setText(s);

}

}

);

bt[1].addActionListener(new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

s+=2;

s2+=2;

tf.setText(s);

}

}

);

bt[2].addActionListener(new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

s+=3;

s2+=3;

tf.setText(s);

}

}

);

bt[4].addActionListener(new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

s+=4;

s2+=4;

tf.setText(s);

}

}

);

bt[5].addActionListener(new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

s+=5;

s2+=5;

tf.setText(s);

}

}

);

bt[6].addActionListener(new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

s+=6;

s2+=6;

tf.setText(s);

}

}

);

bt[8].addActionListener(new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

s+=7;

s2+=7;

tf.setText(s);

}

}

);

bt[9].addActionListener(new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

s+=8;

s2+=8;

tf.setText(s);

}

}

);

bt[10].addActionListener(new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

s+=9;

s2+=9;

tf.setText(s);

}

}

);

bt[12].addActionListener(new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

s+=0;

s2+=0;

tf.setText(s);

}

}

);

bt[13].addActionListener(new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

s+='.';

s2+='.';

tf.setText(s);

}

}

);

bt[3].addActionListener(new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

s1=s;

s+='+';

id=1;

s2="";

tf.setText(s);

}

}

);

bt[7].addActionListener(new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

s1=s;

s+='-';

id=2;

s2="";

tf.setText(s);

}

}

);

bt[11].addActionListener(new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

s1=s;

s+='*';

id=3;

s2="";

tf.setText(s);

}

}

);

bt[14].addActionListener(new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

s="";

s2="";

tf.setText(s);

}

}

);

bt[15].addActionListener(new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

s1=s;

s+='/';

id=4;

s2="";

tf.setText(s);

}

}

);

bt1.addActionListener(new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

if(id1) ;

else{

s+='=';

double a=Double.parseDouble(s1);

double b=Double.parseDouble(s2);

double c=0;

switch(id)

{

case 1:c=a+b; break;

case 2:c=a-b; break;

case 3:c=a*b; break;

case 4:c=a/b; break;

}

s+=c;

tf.setText(s);

}

s="";s1="";s2="";id=0;

}

}

);

bt2.addActionListener(new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

char[] c1;

char[] c2=new char[s.length()-1];

c1=s.toCharArray();

for(int i=0;is.length()-1;i++)

c2[i]=c1[i];

s=s.valueOf(c2);

if(id1)

{

s1=s;

}

if(s2.length()=1)

{

char[] c3;

char[] c4=new char[s2.length()-1];

c3=s2.toCharArray();

for(int i=0;is2.length()-1;i++)

c4[i]=c3[i];

s2=s2.valueOf(c4);

}

tf.setText(s);

}

}

);

}

}

求简单java写计算器代码加减乘除

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

public class Calculator extends JFrame implements ActionListener

{

private boolean dotExist, operated, equaled; // 帮助运算的布尔变量

private double storedNumber; // 目前的结果

private char lastOperator; // 表示上一运算符

private JTextField operation; // 结果栏

private JButton dot, plus, minus, multi, div, sqrt, equal, changePN, clear; // 运算符

private JButton[] numbers; // 数字

// 构造者

public Calculator()

{

setTitle("Calculator");

// 初始化变量

dotExist = false; // 表示当前的数是否有小数点

operated = false; // 表示任意运算符是否被按下

equaled = false; // 表示等号是否被按下

storedNumber = 0;

lastOperator = '?';

// 初始化窗口变量

operation = new JTextField("0");

operation.setEditable(false);

numbers = new JButton[10];

for (int i = 0; i 10; i++)

numbers[i] = new JButton("" + i);

dot = new JButton(".");

plus = new JButton("+");

minus = new JButton("-");

multi = new JButton("*");

div = new JButton("/");

sqrt = new JButton("√");

equal = new JButton("=");

changePN = new JButton("±");

clear = new JButton("AC");

// 将窗口物体放入窗口

GridBagLayout layout = new GridBagLayout();

getContentPane().setLayout(layout);

addComponent(layout, operation, 0, 0, 4, 1);

addComponent(layout, numbers[1], 1, 0, 1, 1);

addComponent(layout, numbers[2], 1, 1, 1, 1);

addComponent(layout, numbers[3], 1, 2, 1, 1);

addComponent(layout, numbers[4], 2, 0, 1, 1);

addComponent(layout, numbers[5], 2, 1, 1, 1);

addComponent(layout, numbers[6], 2, 2, 1, 1);

addComponent(layout, numbers[7], 3, 0, 1, 1);

addComponent(layout, numbers[8], 3, 1, 1, 1);

addComponent(layout, numbers[9], 3, 2, 1, 1);

addComponent(layout, dot, 4, 0, 1, 1);

addComponent(layout, numbers[0], 4, 1, 1, 1);

addComponent(layout, sqrt, 4, 2, 1, 1);

addComponent(layout, plus, 1, 3, 1, 1);

addComponent(layout, minus, 2, 3, 1, 1);

addComponent(layout, multi, 3, 3, 1, 1);

addComponent(layout, div, 4, 3, 1, 1);

addComponent(layout, equal, 5, 0, 2, 1);

addComponent(layout, changePN, 5, 2, 1, 1);

addComponent(layout, clear, 5, 3, 1, 1);

}

// 对按钮进行反应的方法

public void actionPerformed(ActionEvent e)

{

JButton btn = (JButton)e.getSource();

if (btn == clear)

{

operation.setText("0");

dotExist = false;

storedNumber = 0;

lastOperator = '?';

}

else if (btn == equal)

{

operate('=');

equaled = true;

}

else if (btn == plus)

{

operate('+');

equaled = false;

}

else if (btn == minus)

{

operate('-');

equaled = false;

}

else if (btn == multi)

{

operate('*');

equaled = false;

}

else if (btn == div)

{

operate('/');

equaled = false;

}

else if (btn == changePN)

{

operate('p');

operate('=');

equaled = true;

}

else if (btn == sqrt)

{

operate('s');

operate('=');

equaled = true;

}

else

{

if (equaled)

storedNumber = 0;

for (int i = 0; i 10; i++)

if (btn == numbers[i])

{

if (operation.getText().equals("0"))

operation.setText("" + i);

else if(! operated)

operation.setText(operation.getText() + i);

else

{

operation.setText("" + i);

operated = false;

}

}

if (btn == dot ! dotExist)

{

operation.setText(operation.getText() + ".");

dotExist = true;

}

}

}

// 进行运算的方法

private void operate(char operator)

{

double currentNumber = Double.valueOf(operation.getText()).doubleValue();

if (lastOperator == '?')

storedNumber = currentNumber;

else if (lastOperator == '+')

storedNumber += currentNumber;

else if (lastOperator == '-')

storedNumber -= currentNumber;

else if (lastOperator == '*')

storedNumber *= currentNumber;

else if (lastOperator == '/')

storedNumber /= currentNumber;

else if (lastOperator == 'p')

storedNumber *= -1;

else if (lastOperator == 's')

storedNumber = Math.sqrt(currentNumber);

else if (lastOperator == '=' equaled)

storedNumber = currentNumber;

operation.setText("" + storedNumber);

operated = true;

lastOperator = operator;

}

// 快捷使用GridBagLayout的方法

private void addComponent(GridBagLayout layout, Component component, int row, int col, int width, int height)

{

GridBagConstraints constraints = new GridBagConstraints();

constraints.fill = GridBagConstraints.BOTH;

constraints.insets = new Insets(10, 2, 10, 2);

constraints.weightx = 100;

constraints.weighty = 100;

constraints.gridx = col;

constraints.gridy = row;

constraints.gridwidth = width;

constraints.gridheight = height;

layout.setConstraints(component, constraints);

if (component instanceof JButton)

((JButton)component).addActionListener(this);

getContentPane().add(component);

}

// 主方法初始化并显示窗口

public static void main(String[] args)

{

Calculator calc = new Calculator();

calc.setSize(290, 400);

calc.setVisible(true);

}

}

java中如何进行减法运算

setText(""+number1-number2);

因为java是从左到右处理的,在减法运算前有""字符串处理, java就会把之后的都当做字符串处理.改成

setText(""+(number1-number2));

如果减法运算在前面,比如 number1-number2 + "".这样是可以的

关于java按钮加减和Java添加按钮的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。