java代码编写四则运算 javabean实现四则运算

java简单的四则运算.

public class Arithmetic {

我们提供的服务有:做网站、网站建设、微信公众号开发、网站优化、网站认证、孝昌ssl等。为上千企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的孝昌网站制作公司

public static void Ari(){

Scanner scan = new Scanner(System.in);

StringBuffer buffer = new StringBuffer();

DecimalFormat dec = new DecimalFormat("0.00");//格式化结果保留两位小数

String all = "";//所有的计算表达式连在一起

System.out.println("请输入表达式的个数,只能为正整数");

int n = scan.nextInt();

System.out.println("请依次输入要计算的表达式");

   for(int i=0;in+1;i++){

    buffer = buffer.append(scan.nextLine()+",");

   }

   all = buffer.substring(0, buffer.lastIndexOf(","));

   String allAri[] = all.split(",");

   String ari = "";//不同的算法表达式

   float add;//加法的计算结果

   float subtract;//减肥的计算结果

   float multi;//乘法的计算结果

   float divison;//除法的计算结果

   int model;//模运算的计算结果

   for(int j=0;jallAri.length;j++){

    ari = allAri[j];

    if(ari.contains("+")){

    String tempAry[] = ari.split("[+]");

    add = Float.valueOf(tempAry[0])+Float.valueOf(tempAry[1]);

    System.out.println(dec.format(add));

    }else if(ari.contains("-")){

    String tempAry[] = ari.split("[-]");

    subtract = Float.valueOf(tempAry[0])-Float.valueOf(tempAry[1]);

    System.out.println(dec.format(subtract));

    }else if(ari.contains("*")){

    String tempAry[] = ari.split("[*]");

    multi = Float.valueOf(tempAry[0])*Float.valueOf(tempAry[1]);

    System.out.println(dec.format(multi));

    }else if(ari.contains("/")){

    String tempAry[] = ari.split("[/]");

    divison = Float.valueOf(tempAry[0])/Float.valueOf(tempAry[1]);

    System.out.println(dec.format(divison));

    }else if(ari.contains("%")){

    String tempAry[] = ari.split("[%]");

    model = Integer.valueOf(tempAry[0])%Integer.valueOf(tempAry[1]);

    System.out.println(model);

    }

   }

}

public static void main(String[] args) {

Ari();

}

}

测试结果截图如下:

你的测试用例的输入的表达式的个数是4个,但下面的计算表达式好像少了一个,所以我加了一个除法的计算表达式,若理解有误,还望说明。

编写一个实现四则运算的JAVA程序

import java.text.DecimalFormat;

import java.util.Scanner;

public class Zhidao {

public static void main(String[] args) {

String condition = "";

Zhidao zhidao = new Zhidao();

do{

Scanner scanner = new Scanner(System.in);

try{

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

double x = scanner.nextDouble();

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

double y = scanner.nextDouble();

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

String s = scanner.next();

char z = s.charAt(0);

zhidao.yunsuan(x, y, z);

}catch(Exception e){

System.out.println("请输入正确的数据!");

}

System.out.print("是否继续?continue:继续,任意字符:结束");

condition = scanner.next();

}while("continue".equals(condition));

}

public static void yunsuan(double x,double y,Character z){

DecimalFormat r=new DecimalFormat();

r.applyPattern("#0.00");

if(z.equals('+')){

System.out.println(x+"+"+y+"=" + r.format((x+y)));

} else if(z.equals('-')){

System.out.println(x+"-"+y+"=" + r.format((x-y)));

} else if(z.equals('*')){

System.out.println(x+"*"+y+"=" + r.format((x*y)));

} else if(z.equals('/')){

if(y==0){

System.out.println("被除数不能为0");

} else{

System.out.println(x+"/"+y+"=" + r.format((x/y)));

}

}else{

System.out.println("无法识别改运算符");

}

}

}

java四则运算

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class calculator extends JFrame implements ActionListener {

private boolean i=true,clickable = true ;//这里的clickabel 是用来判断小数点的 如果有小数点的话 clickable则为false就不对小数点进行添加了 i在下面有解释

private double value=0; //这个就是显示出来的值了

String operate = "="; //操作数 默认情况下是=号

JFrame jframe=new JFrame("计算机");

JTextField text1=new JTextField("0");

JButton back = new JButton("退格");

JButton daoshu = new JButton("1/x");

JButton remain = new JButton("%");

JButton PI = new JButton("PI"); //显示圆周率小数点后7位

JButton square = new JButton("x^2");

JButton cube = new JButton("x^3");

JButton plu=new JButton("+");

JButton min=new JButton("-");

JButton mul=new JButton("*");

JButton equ=new JButton("=");

JButton div=new JButton("/");

JButton code=new JButton("+/-");

JButton point=new JButton(".");

JButton num1=new JButton("1");

JButton num2=new JButton("2");

JButton num3=new JButton("3");

JButton num4=new JButton("4");

JButton num5=new JButton("5");

JButton num6=new JButton("6");

JButton num7=new JButton("7");

JButton num8=new JButton("8");

JButton num9=new JButton("9");

JButton num0=new JButton("0");

JButton num00=new JButton("00");

JButton clear=new JButton("C");

calculator(){

jframe.setSize(400, 400);

jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JPanel p=new JPanel();

p.setBackground(Color.gray);

p.setLayout(new GridLayout(5, 5)); //采用的布局方式为网格布局

PI.addActionListener(this);

daoshu.addActionListener(this);

remain.addActionListener(this);

square.addActionListener(this);

cube.addActionListener(this);

plu.addActionListener(this);

equ.addActionListener(this);

num1.addActionListener(this);

num2.addActionListener(this);

clear.addActionListener(this);

num3.addActionListener(this);

num4.addActionListener(this);

num5.addActionListener(this);

num6.addActionListener(this);

num7.addActionListener(this);

num8.addActionListener(this);

num9.addActionListener(this);

num0.addActionListener(this);

num00.addActionListener(this);

min.addActionListener(this);

code.addActionListener(this);

div.addActionListener(this);

point.addActionListener(this);

mul.addActionListener(this);

back.addActionListener(this);

jframe.add(p);

p.add(PI);

p.add(code);

p.add(daoshu);

p.add(back);

p.add(clear);

p.add(num7);

p.add(num8);

p.add(num9);

p.add(plu);

p.add(remain);

p.add(num4);

p.add(num5);

p.add(num6);

p.add(min);

p.add(square);

p.add(num1);

p.add(num2);

p.add(num3);

p.add(mul);

p.add(cube);

p.add(num0);

p.add(num00);

p.add(point);

p.add(div);

p.add(equ);

jframe.add(text1,"North");

jframe.setLocation(300, 300);

jframe.setVisible(true);

}

public void actionPerformed(ActionEvent evt)

{

String str1,str2;

Object soc=evt.getSource();

String s = evt.getActionCommand(); //获取按钮的数据

if(soc==back){ //进行退格操作

str1=text1.getText();

int n=str1.length();

text1.setText(str1.substring(0,n-1));

str2 = text1.getText();

}

else if (s.equals("x^2")) {

str1=text1.getText();

double k = Double.parseDouble(str1);

k *=k;

text1.setText(String.valueOf(k));

}

else if (s.equals("x^3")) {

str1=text1.getText();

double k = Double.parseDouble(str1);

k =k*k*k;

text1.setText(String.valueOf(k));

}

else if(s.equals("PI")){ //显示圆周率

double Pi=3.1415926;

String pi=String.valueOf(Pi);

text1.setText(pi);

}

else if(s.equals("+/-")){ //变换正负号

double a = 0;

str1=text1.getText();

a=Double.parseDouble(str1.trim());

a=-1*a;

str1=String.valueOf(a);

text1.setText(str1);

}

else if(s.equals("1/x")){ //求倒

str1=text1.getText();

double i = 1/Double.parseDouble(str1.trim());

String k = String.valueOf(i);

text1.setText(k);

}

else if(s.equals(".")){ //小数点

clickable=true;

for (int i = 0; i text1.getText().length(); i++)

if ('.' == text1.getText().charAt(i))

{

clickable=false;

break;

} //第一层判断是否里面含有小数点;

if(clickable==true) //第二层判断

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

i=false;

}

else if(s.equals("C")){ //清零 所有的数据变回初始值

value = 0;

text1.setText("0");

i=true;

operate = "=" ;

}

else if ('0' = s.charAt(0) s.charAt(0) = '9' ) { //若输入的为数字以及小数点的时候执行下面

if (i) { //判断获得的command是否为操作符

text1.setText(s);

}

else {

text1.setText(text1.getText() + s);

}

i = false;

}

else { //若输入运算操作符的话则执行下面的代码

count(Double.parseDouble(text1.getText().trim())); //这里一开始调用 count()方法的话首先执行的是operate.equals("=")

//执行上个操作符的运算

operate = s;

i = true;

}

}

private void count(double a) { //计算区域

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

value += a;

}

else if (operate.equals("-")) {

value -= a;

}

else if (operate.equals("*")) {

value *= a;

}

else if (operate.equals("/")) {

value /= a;

}

else if (operate.equals("%")) {

value %= a;

}

else if (operate.equals("=")) {

value = a;

}

text1.setText(Double.toString(value));

}

public static void main(String[] arg)

{

calculator cal=new calculator();

}

}

这是例子 你可以参考下~监听的 部分

如何用Java编写四则运算程序?

(首先建个类,把这些复制粘贴进去)

import java.awt.*;

import javax.swing.*;

public class F {

JFrame frame = new JFrame("计算机");

JPanel pl = new JPanel();

JPanel p2 = new JPanel();

static JTextField show = new JTextField();

static JButton b0 = new JButton("0");

static JButton b1 = new JButton("1");

static JButton b2 = new JButton("2");

static JButton b3 = new JButton("3");

static JButton b4 = new JButton("4");

static JButton b5 = new JButton("5");

static JButton b6 = new JButton("6");

static JButton b7 = new JButton("7");

static JButton b8 = new JButton("8");

static JButton b9 = new JButton("9");

JButton bjia = new JButton("+");

JButton bjian = new JButton("-");

JButton bcheng = new JButton("*");

JButton bchu = new JButton("/");

JButton bdian = new JButton(".");

JButton bdeng = new JButton("=");

JButton bqingchu = new JButton("清除");

public void y() {

pl.setLayout(new GridLayout(1, 1));

pl.add(show);

}

public void p() {

b1.addActionListener(new U());

b2.addActionListener(new U());

b3.addActionListener(new U());

b4.addActionListener(new U());

b5.addActionListener(new U());

b6.addActionListener(new U());

b7.addActionListener(new U());

b8.addActionListener(new U());

b9.addActionListener(new U());

b0.addActionListener(new U());

bjia.addActionListener(new Fu());

bjian.addActionListener(new Fu());

bcheng.addActionListener(new Fu());

bchu.addActionListener(new Fu());

bdeng.addActionListener(new Deng());

bqingchu.addActionListener(new Qing());

p2.setLayout(new GridLayout(6, 3));

p2.add(b1);

p2.add(b2);

p2.add(b3);

p2.add(b4);

p2.add(b5);

p2.add(b6);

p2.add(b7);

p2.add(b8);

p2.add(b9);

p2.add(b0);

p2.add(bjia);

p2.add(bjian);

p2.add(bcheng);

p2.add(bchu);

p2.add(bdian);

p2.add(bqingchu);

p2.add(bdeng);

}

public void o() {

frame.setLayout(new BorderLayout());

frame.add(pl, BorderLayout.NORTH);

frame.add(p2, BorderLayout.CENTER);

frame.setSize(400, 300);

frame.setVisible(true);

}

public static void main(String[] args) {

F f = new F();

f.y();

f.p();

f.o();

}

}

(再新建个类 把这些也复制粘贴进去)

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

public class U implements ActionListener {

public static String str = "";

public static String a = "";

public static String b = "";

public static String k = "";

public void actionPerformed(ActionEvent e) {

String w = e.getActionCommand();//字

if (k.equals("")) {

a += w;

F.show.setText(a);

} else {

b += w;

F.show.setText(b);

}

}

}

(再新建一个,把下面的复制粘贴)

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

public class Deng implements ActionListener {

public void actionPerformed(ActionEvent e) {

int a = Integer.parseInt(U.a);

int b = Integer.parseInt(U.b);

int c = 0;

if (U.k.equals("+")) {

c = a + b;

} else

if (U.k.equals("-")) {

c = a - b;

} else

if (U.k.equals("*")) {

c = a * b;

} else

if (U.k.equals("/")) {

c = a / b;

} else {

}

String d = String.valueOf(c);

F.show.setText(d);

U.a = d;

U.b = "";

U.k = "";

}

}

(在建一个 复制粘贴)

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

public class Fu implements ActionListener {

public void actionPerformed(ActionEvent e) {

String a = e.getActionCommand();//字

U.k = a;

}

}

(在建一个)

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

public class Qing implements ActionListener {

public void actionPerformed(ActionEvent e) {

U.a = "";

U.b = "";

U.k = "";

F.show.setText("");

}

}


网站栏目:java代码编写四则运算 javabean实现四则运算
当前网址:http://ybzwz.com/article/ddjehhg.html