您的位置:

java程序编写一个计算器类(java程序编写一个计算器类的数据)

本文目录一览:

怎么用JAVA编程编写一个计算器?

打开IED:打开自己java编程的软件,采用的是eclipse软件。

建立java工程。

编写类。

编写类的详细步骤

1.类的基本结构:

由于这里用到了界面,所以要进行窗口界面的编程,按钮事件的处理,和计算处理界面;

package MyCaculator;

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class MyCaculator extends JFrame {

private int add=1,sub=2,mul=3,div=4;

private int op=0;

boolean ifOp;

private String output="0";

private Button[] jba=new Button[]{new Button("7"),new Button("8"),

new Button("9"),new Button("+"),

new Button("4"),new Button("5"),new Button("6"),new Button("-"),

new Button("1"),new Button("2"),new Button("3"),new Button("*"),

new Button("0"),new Button("."),new Button("="),new Button("/")};

private JPanel jpt=new JPanel();

private JPanel jpb=new JPanel();

private JTextField jtf=new JTextField("");

private MyCaculator(){

}

private void operate(String x){

}

public String add(String x){

return output;

}

public String subtract(String x){

return output;

}

public String multiply(String x){

return output;

}

public String divide(String x){

return output;

}

public String Equals(String x){

return output;

}

public void opClean(){

}

class setOperate_Act implements ActionListener{

public void actionPerformed(ActionEvent e) {

}

}

class setLabel_Act implements ActionListener{

public void actionPerformed(ActionEvent e) {

}

}

public static void main(String[] args) {

}

}

2.建立构造方法:

所谓构造方法就是,对自己的主类进行初始化,代码如下:

private MyCaculator(){

jpt.setLayout(new BorderLayout());

jpt.add(jtf);

this.add(jpt,BorderLayout.NORTH);

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

for(int i=0;ijba.length;i++){

jpb.add(jba[i]);

if(i==3||i==7||i==11||i==15||i==14)

jba[i].addActionListener(new setOperate_Act());

else

jba[i].addActionListener(new setLabel_Act());

}

this.add(jpb,BorderLayout.CENTER);

this.setSize(250, 200);

this.setResizable(false);

this.setVisible(true);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

3.建立数据计算方法

这里的数据计算方法有6个,一个是主方法其他几个是加减乘除的处理方法,代码如下:

private void operate(String x){

double x1=Double.valueOf(x);

double y=Double.valueOf(output);

switch(op){

case 0:output=x;break;

case 1:output=String.valueOf(y+x1);break;

case 2:output =String.valueOf(y-x1);break;

case 3:output =String.valueOf(y*x1);break;

case 4:

if(x1!=0) output=String.valueOf(y/x1);

else output="不能为0";

break;

}

}

public String add(String x){

operate(x);

op=add;

return output;

}

public String subtract(String x){

operate(x);

op=sub;

return output;

}

public String multiply(String x){

operate(x);

op=mul;

return output;

}

public String divide(String x){

operate(x);

op=div;

return output;

}

public String Equals(String x){

operate(x);

op=0;

return output;

}

public void opClean(){

op=0;

output ="0";

}

4.事件处理方法

这里的时间处理方法,没有建立一个整体的方法,二是在为了便于处理的方法,将按钮事件分成两个部分,并采用两个子类来实现,这两个类时内部类要写在主类内部的,代码如下:

class setOperate_Act implements ActionListener{

public void actionPerformed(ActionEvent e) {

if(e.getSource()==jba[3]){

jtf.setText(add(jtf.getText()));

ifOp=true;

}

else if(e.getSource()==jba[7]){

jtf.setText(subtract(jtf.getText()));

ifOp=true;

}

else if(e.getSource()==jba[11]){

jtf.setText(multiply(jtf.getText()));

ifOp=true;

}

else if(e.getSource()==jba[15]){

jtf.setText(divide(jtf.getText()));

ifOp=true;

}

else if(e.getSource()==jba[14]){

jtf.setText(Equals(jtf.getText()));

ifOp=true;

}

}

}

class setLabel_Act implements ActionListener{

public void actionPerformed(ActionEvent e) {

Button tempb=(Button)e.getSource();

if(ifOp){

jtf.setText(tempb.getLabel());

ifOp=false;

}else {

jtf.setText(jtf.getText()+tempb.getLabel());

}

}

}

5.建立main方法:

要想实现我们的代码,我们需在main方法中,实例化我们的对象。

public static void main(String[] args) {

new MyCaculator();

}

用java程序编写一个计算器

不太完善,你再加点输入的逻辑判断什么的,这个演示只能输入正确的数据才能运行,否则会报错,仅供参考。(求采纳啊)publicclassC{staticDoublers;publicstaticDoubleyunsuan(Stringr,Doublea1,Doublea2){Doubleresult;if(r.equals("+")){result=a1+a2;System.out.println("运算结果为:"+result);}elseif(r.equals("-")){result=a1-a2;System.out.println("运算结果为:"+result);}elseif(r.equals("*")){result=a1*a2;System.out.println("运算结果为:"+result);}elseif(r.equals("/")){result=a1/a2;System.out.println("运算结果为:"+result);}else{result=a1*a2;System.out.println("运算结果为:"+result);}returnresult;}publicstaticvoidmain(String[]args){intss=0;while(ss==0){Scannerscan=newScanner(System.in);System.out.println("请输入第一个数:");Doublea1=scan.nextDouble();System.out.println("请输入运算符(+、-、*、/、%):");Stringr=scan.next();System.out.println("请输入第二个数:");Doublea2=scan.nextDouble();rs=yunsuan(r,a1,a2);System.out.println("请输入指令(继续运算/新的运算/结束运算)");Stringff=scan.next();if(ff.equals("继续运算")){System.out.println("请输入运算符(+、-、*、/、%):");r=scan.next();System.out.println("请输入第二个数:");Doublea3=scan.nextDouble();rs=yunsuan(r,rs,a3);System.out.println("请输入指令(继续运算/新的运算/结束运算)");ff=scan.next();}elseif(ff.equals("新的运算")){continue;}else{ss=1;}}}}

java编程,用代码实现计算器类(Calculator)

public class Calculator {

private int number1;

private int number2;

public Calculator(int number1, int number2) {

this.number1 = number1;

this.number2 = number2;

}

public double add() {

return number1 + number2;

}

public double subtract() {

return number1 - number2;

}

public double multiple() {

return number1 * number2;

}

public double divide() {

if(number2 == 0) {

return 0;

}

return number1 / number2;

}

}

public class TestCalculator {

public static void main(String[] args) {

Calculator calculator = new Calculator(5, 2);

System.out.println(calculator.add());

System.out.println(calculator.subtract());

System.out.println(calculator.multiple());

System.out.println(calculator.divide());

}

}

java程序编写一个计算器类(java程序编写一个计算器类的

2022-11-11
java编写计算器,java编写计算器程序代码

2022-11-27
我编了一个java程序(java 程序编写)

2022-11-11
用java写一个简单计算器(用java做一个简单的计算器)

2022-11-13
使用java编写一个简单的(怎么写一个java程序)

2022-11-09
用java编写计算器(用java编写计算器代码)

2022-11-12
求一个java编程计数器的代码,计算器编程代码java

2022-11-22
java编写程序,Java编写程序实现简单记事本

2023-01-06
java程序设计的编程(程序设计Java)

2022-11-16
编写一个程序用java(编写一个程序用于水果店售货员结账)

2022-11-08
java录入个人信息程序,编写java程序打印个人信息

2022-11-18
用Java编写简单易懂的年龄计算程序

2023-05-17
java程序编写,java程序编写培训

2023-01-10
java怎么编写一个圆形的*,java画圆形

2023-01-07
java编写一个简单记事本(用java写一个记事本程序思路)

2022-11-10
java用什么编译器来写程序,java编译器用什么写的

2022-11-20
java计算器,java计算器界面

2022-12-01
计算机编程java课程,计算机编程java课程教学

2022-11-18
java编写游戏,java编写游戏挂机程序

2022-12-02
jsp程序开发学习笔记2,jsp程序设计题库

本文目录一览: 1、《JSP&Servlet学习笔记》pdf下载在线阅读,求百度网盘云资源 2、林信良编著jsp&servlet学习笔记第2版课后答案吗 3、jsp有没有快速掌握的办法呀? 4、要学J

2023-12-08