网站首页 > 文章中心 > 其它

java加减乘除程序代码

作者:小编 更新时间:2023-08-19 07:35:59 浏览量:84人看过

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

import javax.swing.*;

java加减乘除程序代码-图1

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[] numbers; // 数字

// 构造者

public Calculator()

setTitle("Calculator");

java加减乘除程序代码-图2

// 初始化变量

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("*");

sqrt = new JButton("√");

equal = new JButton("=");

changePN = new JButton("≡");

clear = new JButton("AC");

// 将窗口物体放入窗口

GridBagLayout layout = new GridBagLayout();

getContentPane().setLayout(layout);

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

}

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

public void actionPerformed(ActionEvent e)

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

if (btn == clear)

operation.setText("0");

dotExist = false;

else if (btn == equal)

operate('=');

equaled = true;

else if (btn == plus)

operate('+');

equaled = false;

else if (btn == minus)

operate('-');

else if (btn == multi)

operate('*');

operate('/');

else if (btn == changePN)

operate('p');

else if (btn == sqrt)

operate('s');

else

if (equaled)

if (btn == numbers[i])

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

operation.setText("" + i);

else if(! operated)

operation.setText(operation.getText() + 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)

operation.setText("" + storedNumber);

java加减乘除程序代码-图3

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.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.setVisible(true);

java 加减乘除程序怎么做?

因为.字符串判断内容上是否相同,要使用的是equals函数

修改后的代码

double?result?=?0;

if?(s.equals("*"))?{//字符串判断内容是否一致,要使用equals函数?,

if?(s.equals("/"))?{

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

if?(s.equals("-"))?{

运行

java加减乘除运算的程序怎么编啊

import java.util.Scanner;

public class 四则运算 {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

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

int a = sc.nextInt();

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

String str = sc.next();

char ch = str.charAt(0);

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

int b = sc.nextInt();

switch(ch)

case '+':

System.out.println(a+"+"+ b + "="+(a+b));

break;

case '-':

System.out.println(a+"-"+ b+ "="+(a-b));

case '*':

System.out.println(a+"*"+ b+ "="+(a*b));

case '/':

if(b==0){

System.out.println("被除数为零,运算无意义!");

else {

System.out.println(a+"/"+ b+ " = "+(a/b));

default:

System.out.println("运算符是无意义字符!");

望采纳~~~~~~~~

设计一个Java程序,能够实现加减乘除运算,谢谢!

import?javax.swing.*;

import?java.awt.*;

import?java.awt.event.*;

public?class?Calculator?extends?JFrame?implements?ActionListener{

bto_jian=new?JButton("-"),bto_0=new?JButton("0"),bto_dian=new?JButton("."),bto_deng=new?JButton("="),bto_jia=new?JButton("+");

bto_0,bto_dian,bto_deng,bto_jia};

private?JTextField?text_double;//?=?new?JTextField("0");

private?String?operator?=?"=";?//当前运算的运算符

private?boolean?firstDigit?=?true;?//?标志用户按的是否是整个表达式的第一个数字,或者是运算符后的第一个数字

private?double?resultNum?=?0.0;?//?计算的中间结果

private?boolean?operateValidFlag?=?true;?//判断操作是否合法

public?Calculator()

super("Calculator");

this.setResizable(false);

this.setBackground(Color.orange);

this.setDefaultCloseOperation(EXIT_ON_CLOSE);

this.getContentPane().setLayout(new?BorderLayout());//设置布局

text_double.setHorizontalAlignment(JTextField.RIGHT);//设置水平对齐方式未右对齐

this.getContentPane().add(text_double,BorderLayout.NORTH);//将文本区添加到Content北部

this.getContentPane().add(panel);//添加panel面板

for(int?i=0;ibutton.length;i++)//在面板上添加按钮

panel.add(button[i]);

for(int?i=0;ibutton.length;i++)

button[i].addActionListener(this);//为按钮注册

text_double.addActionListener(this);//

this.setVisible(true);

public?void?actionPerformed(ActionEvent?e)//

String?c=?e.getActionCommand();//返回与此动作相关的命令字符串.

System.out.println("##########command?is?"+c);

if(c.equals("C")){

handleC();???//用户按了"C"键

else?if?(c.equals("CE"))??//?用户按了"CE"键

text_double.setText("0");

handleNumber(c);?//?handlezero(zero);

}?else??//用户按了运算符键

handleOperator(c);

private?void?handleC()??//?初始化计算器的各种值

firstDigit?=?true;

operator?=?"=";

private?void?handleNumber(String?button)?{

if?(firstDigit)//输入的第一个数字

text_double.setText(button);

}?else?if?((button.equals("."))?(text_double.getText().indexOf(".")?0))//输入的是小数点,并且之前没有小数点,则将小数点附在结果文本框的后面

//如果字符串参数作为一个子字符串在此对象中出现,则返回第一个这种子字符串的第一个字符的索引;如果它不作为一个子字符串出现,则返回?-1

text_double.setText(text_double.getText()?+?".");

}?else?if?(!button.equals("."))//?如果输入的不是小数点,则将数字附在结果文本框的后面

text_double.setText(text_double.getText()?+?button);

//?以后输入的肯定不是第一个数字了

firstDigit?=?false;

private?void?handleOperator(String?button)?{

if?(operator.equals("/"))?{

//?除法运算

//?如果当前结果文本框中的值等于0

if?(getNumberFromText()?==?0.0){

//?操作不合法

operateValidFlag?=?false;

text_double.setText("除数不能为零");

}?else?{

resultNum?/=?getNumberFromText();

}?else?if?(operator.equals("+")){

//?加法运算

resultNum?+=?getNumberFromText();

}?else?if?(operator.equals("-")){

//?减法运算

resultNum?-=?getNumberFromText();

}?else?if?(operator.equals("*")){

//?乘法运算

resultNum?*=?getNumberFromText();

}?else?if?(operator.equals("sqrt"))?{

//?平方根运算

if(getNumberFromText()0){

text_double.setText("被开方数不能为负数");}

resultNum?=?Math.sqrt(resultNum);

else?if?(operator.equals("+/-")){

//?正数负数运算

resultNum?=?resultNum?*?(-1);

}?else?if?(operator.equals("=")){

//?赋值运算

resultNum?=?getNumberFromText();

if?(operateValidFlag)?{

//?双精度浮点数的运算

long?t1;

t1?=?(long)?resultNum;

text_double.setText(String.valueOf(t1));

text_double.setText(String.valueOf(resultNum));

operator?=?button;?//运算符等于用户按的按钮

operateValidFlag?=?true;

private?double?getNumberFromText()?//从结果的文本框获取数字

try?{

result?=?Double.valueOf(text_double.getText()).doubleValue();?//?ValueOf()返回表示指定的?double?值的?Double?实例

}?catch?(NumberFormatException?e){

return?result;

public?static?void?main(final?String[]?args)?{

new?Calculator();

java的加减乘除运算

使用BigDecimal并且一定要用String来够造.

实现方法如下:

import java.math.BigDecimal;

/**

* 由于Java的简单类型不能够精确的对浮点数进行运算,这个工具类提供精

* 确的浮点数运算,包括加减乘除和四舍五入.

*/

public class Arith{

//默认除法运算精度

private static final int DEF_DIV_SCALE = 10;

//这个类不能实例化

private Arith(){

* 提供精确的加法运算.

* @param v1 被加数

* @return 两个参数的和

BigDecimal b1 = new BigDecimal(Double.toString(v1));

* 提供精确的减法运算.

* @param v1 被减数

* @return 两个参数的差

* 提供精确的乘法运算.

* @param v1 被乘数

* @return 两个参数的积

* 提供(相对)精确的除法运算,当发生除不尽的情况时,精确到

* 小数点以后10位,以后的数字四舍五入.

* @param v1 被除数

* @return 两个参数的商

* 提供(相对)精确的除法运算.当发生除不尽的情况时,由scale参数指

* 定精度,以后的数字四舍五入.

* @param scale 表示表示需要精确到小数点以后几位.

if(scale0){

throw new IllegalArgumentException(

"The scale must be a positive integer or zero");

* 提供精确的小数位四舍五入处理.

* @param v 需要四舍五入的数字

* @param scale 小数点后保留几位

* @return 四舍五入后的结果

public static double round(double v,int scale){

BigDecimal b = new BigDecimal(Double.toString(v));

BigDecimal one = new BigDecimal("1");

};

用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;

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

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

JComboBoxString?jcb=new?JComboBoxString(a);

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

JPanel?jp=new?JPanel();

Calculator(){

setTitle("计算器");

jb1.addActionListener(this);

jp.setLayout(null);

add(jp,BorderLayout.CENTER);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setLocationRelativeTo(null);

setVisible(true);

public?static?void?main(String[]?args)?{

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;

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

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

switch(c){

case?"/":

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

}else{

System.exit(0);

运行结果

以上就是土嘎嘎小编为大家整理的java加减乘除程序代码相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章