java程序,用图形实现乘除运算

java程序,用图形实现乘除运算,第1张

1、新建一个java类,定义加法的方法。定义方式为声明两个变量,然后相加,赋给第三个变量,并使用return返回出来。

2、在第一步中的java类中,定义减法的方法。定义方式跟加法类似,只要把加法中的“+”号修改为“-”,再修改方法名。

3、在第一步中的java类中,定义乘法的方法。定义方式为声明两变量相乘并赋值,返回的类型不再是int,一般则定义为double。

4、在第一步中的java类中,定义除法的方法。与乘法基本一样。除数不能为0,所以要进行判断一下。

5、最后在main函数中,实例化该java类,并通过实例化的别名点方法名实现调用加减乘除的方法(如:例子中的TestHello test = new TestHello();testsum(8, 9);),右键运行控制台打印出结果。

6、补充一下:细心的同学,应该注意到通过实例化的别名点方法名又赋值给另外一个变量,这个也可以省略,直接修改为Systemoutprintln(int sum = testsum(8, 9));这种方式打印出来。

package comzswtest;

public class sleeping_Pea {

 public static void main(String[] args) {

  Systemoutprintln(calcN(10));

  print(100, 200);

 }

 /

   计算圆的面积

   

   @param radio

              圆的半径

   @return

  /

 public static float calcCicle(float radio) {

  if (radio <= 0) {

   return 0;

  }

  return (float) (radio  radio  MathPI);

 }

 /

   计算N的阶乘

   

   @param n

   @return

  /

 public static long calcN(int n) {

  if (n - 1 > 0) {

   return n  calcN(n - 1);

  }

  return n;

 }

 /

   打印出指定数字范围的能被3整除的数字,每10个一行输出

   

   @param startNum

              数字起始值,包含

   @param endNum

              数字结束值,包含

  /

 public static void print(int startNum, int endNum) {

  if (startNum > endNum) {

   new IllegalArgumentException("起始值大于结束值异常!");

  }

  int tmp = startNum;

  int printCount = 0;

  while (tmp <= endNum) {

   if (tmp % 3 == 0) {

    Systemoutprint(tmp + "  ");

    printCount++;

    if (printCount == 10) {

     Systemoutprint("\n");

     printCount = 0;

    }

   }

   tmp++;

  }

 }

}

public class Number {

private Integer n1;

private Integer n2;

/ 构造方法 /

public Number(Integer n1, Integer n2) {

super();

thisn1 = n1;

thisn2 = n2;

}

/ 加 /

public Integer addition() {

Systemoutprintln(thisn1 + thisn2);

return thisn1 + thisn2;

}

/ 减 /

public Integer subtration() {

Systemoutprintln(thisn1 - thisn2);

return thisn1 - thisn2;

}

/ 乘 /

public Integer multiplication() {

Systemoutprintln(thisn1 thisn2);

return thisn1 thisn2;

}

/ 除 /

public Integer division() {

Systemoutprintln(thisn1 / thisn2);

return thisn1 / thisn2;

}

public Integer getN1() {

return n1;

}

public void setN1(Integer n1) {

thisn1 = n1;

}

public Integer getN2() {

return n2;

}

public void setN2(Integer n2) {

thisn2 = n2;

}

}

public static void main(String[] args) {

Number number = new Number(1, 2);

numberaddition();

numbersubtration();

numbermultiplication();

numberdivision();

}

简单的啊,我有个自己编的完美的,不过给你改成简单的吧。有注释。

import javaawt;

import javaxswing;

import javaxswingborder;

import javaawtevent;

import javatext;

public class Calculator extends JFrame implements ActionListener

{

int m=0,i,n=0;

float sum=0,s1,s2,equ;

String v="";

JPanel delete_main = new JPanel();

JPanel delete = new JPanel();

JPanel buttons = new JPanel();

JTextField text = new JTextField("0");

JButton backspace = new JButton("Backspace");

JButton c = new JButton("C");

JButton ce = new JButton("CE");

JButton bt1= new JButton("1");

JButton bt2= new JButton("2");

JButton bt3= new JButton("3");

JButton bt4= new JButton("+");

JButton bt5 = new JButton("4");

JButton bt6= new JButton("5");

JButton bt7= new JButton("6");

JButton bt8= new JButton("-");

JButton bt9= new JButton("7");

JButton bt10= new JButton("8");

JButton bt11= new JButton("9");

JButton bt12= new JButton("");

JButton bt13= new JButton("0");

JButton bt14= new JButton("");

JButton bt15= new JButton("=");

JButton bt16= new JButton("/");

public Calculator()

{

super("简易计算器--超人不会飞荣誉出品");

deletesetLayout(new GridLayout(1, 3, 15, 15));

deleteadd(backspace);

deleteadd(c);

deleteadd(ce);

deletesetBorder(new LineBorder(deletegetBackground(), 5));//添加边框

caddActionListener(this);

ceaddActionListener(this);

backspaceaddActionListener(this);

textsetFont(new Font("宋体", FontBOLD +FontITALIC, 20));

// 设置显示字体

textsetBackground(ColorgetHSBColor(44, 3, 87));

textsetBorder(new LineBorder(ColorORANGE, 1));

textsetHorizontalAlignment(SwingConstantsRIGHT); // 设置鼠标靠右

textsetEditable(false); // 屏蔽键盘输入,防止非法字符

delete_mainsetLayout(new GridLayout(2, 1, 10, 10));

delete_mainadd(text, BorderLayoutNORTH);

delete_mainadd(delete, BorderLayoutSOUTH);

buttonssetLayout(new GridLayout(4, 5, 10, 20));

bt1addActionListener(this); // 为各个按钮添加事件监听

buttonsadd(bt1);

bt2addActionListener(this);

buttonsadd(bt2);

bt3addActionListener(this);

buttonsadd(bt3);

bt4addActionListener(this);

buttonsadd(bt4);

bt5addActionListener(this);

buttonsadd(bt5);

bt6addActionListener(this);

buttonsadd(bt6);

bt7addActionListener(this);

buttonsadd(bt7);

bt8addActionListener(this);

buttonsadd(bt8);

bt9addActionListener(this);

buttonsadd(bt9);

bt10addActionListener(this);

buttonsadd(bt10);

bt11addActionListener(this);

buttonsadd(bt11);

bt12addActionListener(this);

buttonsadd(bt12);

bt13addActionListener(this);

buttonsadd(bt13);

bt14addActionListener(this);

buttonsadd(bt14);

bt15addActionListener(this);

buttonsadd(bt15);

bt16addActionListener(this);

buttonsadd(bt16);

buttonssetBorder(new LineBorder(deletegetBackground(), 5));//边框

thissetLayout(new BorderLayout());

thisadd(delete_main, BorderLayoutNORTH);

thisadd(buttons, BorderLayoutSOUTH);

setDefaultCloseOperation(JFrameEXIT_ON_CLOSE); //添加关闭窗口事件监听器

pack(); //自动设置窗体大小

setResizable(false); // 设置面板大小不可变

setVisible(true);

Toolkit tk = thisgetToolkit();

Dimension de = tkgetScreenSize();

setBounds((dewidth - thisgetWidth()) / 2,(deheight - thisgetHeight()) / 2, thisgetWidth(), thisgetHeight());

//使之居于屏幕正中央

}

public void actionPerformed(ActionEvent e)

{ //事件响应

//Object source = egetSource();

if(egetSource()==backspace) //退格键

{

v=vsubstring(0,vlength() - 1);

textsetText(v);

}

if(egetSource()==c||egetSource()==ce) //清空键

{

m=0;

sum=0;

v="";s1=0;s2=0;i=0;

textsetText("0");

}

if(egetSource()==bt1)

{

if(m==1)

v="";

v=v+"1";

textsetText(v);

m=0;n=1;

}

if(egetSource()==bt2)

{

if(m==1)

v="";

v=v+"2";

textsetText(v);

m=0;n=1;

}

if(egetSource()==bt3)

{

if(m==1)

v="";

v=v+"3";

textsetText(v);

m=0;n=1;

}

if(egetSource()==bt4) // +按钮

{

if(n==1) //如果按之前按了0~9数字键,就运算

{

sum=FloatparseFloat(v);

}

else //如果按之前没按0~9数字键,直接按了运算符,不做任何 *** 作

{

}

i=1;

m=1;n=0;

}

if(egetSource()==bt5)

{

if(m==1)

v="";

v=v+"4";

textsetText(v);

m=0;n=1;

}

if(egetSource()==bt6)

{

if(m==1)

v="";

v=v+"5";

textsetText(v);

m=0;n=1;

}

if(egetSource()==bt7)

{

if(m==1)

v="";

v=v+"6";

textsetText(v);

m=0;n=1;

}

if(egetSource()==bt8) // -按钮

{

if(n==1)

{

sum=FloatparseFloat(v);

}

else

{

}

i=2;

m=1;n=0;

}

if(egetSource()==bt9)

{

if(m==1)

v="";

v=v+"7";

textsetText(v);

m=0;n=1;

}

if(egetSource()==bt10)

{

if(m==1)

v="";

v=v+"8";

textsetText(v);

m=0;n=1;

}

if(egetSource()==bt11)

{

if(m==1)

v="";

v=v+"9";

textsetText(v);

m=0;n=1;

}

if(egetSource()==bt12) //按钮

{

if(n==1)

{

sum=FloatparseFloat(v);

}

else

{

}

i=3;

m=1;n=0;

}

if(egetSource()==bt13)

{

if(m==1)

v="";

v=v+"0";

textsetText(v);

m=0;n=1;

}

if(egetSource()==bt14)

{

}

if(egetSource()==bt15) //等于按钮

{

if(m==1) // 如果输入了+=等非法输入,不做任何 *** 作

{ }

else

{

s1=sum;

s2=FloatparseFloat(v);

switch(i)

{

case 0: //如果按过数字键后直接按等号,直接输出

equ=FloatparseFloat(v);

break;

case 1:

equ=s1+s2;

break;

case 2:

equ=s1-s2;

break;

case 3:

equ=s1s2;

break;

case 4:

equ=s1/s2;

break;

}

sum=0;v=""; //清空运算数

v=StringvalueOf(equ);

textsetText(StringvalueOf(equ));

i=0;

}

}

if(egetSource()==bt16) // 除按钮

{

if(n==1)

{

sum=FloatparseFloat(v);

}

else

{

}

i=4;

m=1;n=0;

}

}

public static void main(String[] args)

{

Calculator bt=new Calculator();

}

}

import javaawt;

import javaawtevent;

import javaxswing;

public class Calculator implements ActionListener{

private double data1=00,data2=00;

private String t_content;

boolean number=false;

short key=-1;//key用来标示用户所按下的按钮即加减乘除。key为0标示+,为1表示-,为2表示,为3表示

short pkey=-1;//pkey的取值为-1--5,pkey为-1表示第一次按下=按钮,为5说明不是第一次按下=按钮,pkey为其他值0,1,2,3时分别代表+,-,

Frame frame=new Frame("Calculator");//定义标题为Calculator的窗体

TextField textfield=new TextField(30);//定义计算器的输入

Button backspace=new Button("Backspace");//定义backspace,ce,c0按钮

Button ce=new Button("CE");

Button c0=new Button("C");

Panel p1=new Panel();//定义面板,其中backspace,ce,c0按钮和计算机兰textfeild放在面板p1中

Panel p2=new Panel();//其余按钮放在面板p2中,为GridLayout布局,4行5列

String names[]={"7","8","9","/","sqrt","4","5","6","","%","1","2","3","-","1/x","0","+/-","","+","="};//定义界面上的按钮数组,即除去backspace,ce,c0按钮的所有按钮

Button bb[]=new Button[nameslength];

public static void main(String[] args){

Calculator cal=new Calculator();//实例化Calculator对象

calgo();

}//函数入口

public void go(){

framesetSize(300,200);//设置窗体大小

framesetLayout(new BorderLayout());//设置布局为边框布局

Font fonts=new Font("楷体_GB2312",FontPLAIN,12);

//设置面板p1的字体和布局管理类型,将textfeild对象添加到面板中

p1setFont(fonts);

p1setLayout(new GridLayout(2,1,5,10));

textfieldsetFont(fonts);

p1add(textfield,null);

//backspace,ce,c0按钮注册addActionListener方法

backspaceaddActionListener(this);

ceaddActionListener(this);

c0addActionListener(this);

//将backspace,ce,c0按钮添加到p1面板中

p1add(backspace,null);

p1add(ce,null);

p1add(c0,null);

p2setLayout(new GridLayout(4,5,5,5));//设置面板p2的布局管理器类型为GridLayout

//为按钮组中的按钮注册addActionListener方法

for(int i=0;i<nameslength;i++){

bb[i]=new Button(names[i]);

p2add(bb[i]);

bb[i]addActionListener(this);

}

//设置面板p1和面板p2在窗体中的位置//面板p1在窗体的North方向,面板p2在窗体的South方向

frameadd(p1,BorderLayoutNORTH);

frameadd(p2,BorderLayoutSOUTH);

framesetVisible(true);

//当单击关闭按钮时退出系统

frameaddWindowListener(new WindowAdapter(){

public void windowClosing(WindowEvent e){

Systemexit(0);

}

});

}

public void actionPerformed(ActionEvent ae){

String s=aegetActionCommand();//定义了一个Sting类的变量s,将getActionCommand方法得到的值传递给参数ae

//通过ActionEvent类的getActionCommand()方法,得出动作是由哪个按钮触发的。 //用户单击一次,计算栏里便去掉一个字符,先将计算栏里的字符清空,再添加除最好一个字符的字符串

if(sequals("Backspace")&&number){

t_content=textfieldgetText();

textfieldsetText("");

for(int i=0;i<t_contentlength()-1;i++){

char c=t_contentcharAt(i);

textfieldsetText(textfieldgetText()+c);

}

}

//用户单击的是CE按钮,计算栏清空

if(sequals("CE")){

textfieldsetText("");

number=false;

}

//用户单击的是C按钮

if(sequals("C")){

textfieldsetText("");

data1=data2=00;

number=false;

}

//用户单击的是sqrt按钮,其中负数不能被开方

if(sequals("sqrt")&&number){

t_content=textfieldgetText();

if(t_contentcharAt(0)=='-'){

textfieldsetText("负数不能被开方");

number=false;

}else{

textfieldsetText(DoubletoString(javalangMathsqrt(DoubleparseDouble(t_content))));

}

}

//用户单击的是1/x求倒数按钮,求倒数时分母不能为0

if(sequals("1/x") && number){

t_content=textfieldgetText();

if(t_contentequals("0")){

textfieldsetText("零不能求倒数");

number=false;

}else{

textfieldsetText(DoubletoString(1/DoubleparseDouble(t_content)));

}

}

//用户单击的是%按钮

if(sequals("%")&&number){

if(data2==0){

t_content=textfieldgetText();

textfieldsetText(t_content);

}else{

boolean g=false;

for(int i=0;i<textfieldgetText()length();i++)

if(''==textfieldgetText()charAt(i)){

g=true;

break;

}

//如果是Double 数,除100

if(g=true){

double dtemp=DoubleparseDouble(textfieldgetText());

dtemp=dtemp/1000;

textfieldsetText(DoubletoString(dtemp));

}

//如果是int数但能被100整除,则去掉末尾两个0

else{

if(IntegerparseInt(textfieldgetText())%100==0){

int itemp=IntegerparseInt(textfieldgetText());

itemp/=100;

textfieldsetText(IntegertoString(itemp));

}

//如果是int数,但不能被100整除,则按Double数处理

else{

double dtemp=DoubleparseDouble(textfieldgetText());

dtemp=dtemp/1000;

textfieldsetText(DoubletoString(dtemp));

}

}

}

}

//对正负数字的处理

if(sequals("+/-")){

t_content=textfieldgetText();

if(t_contentcharAt(0)=='-'){

textfieldsetText("");

String content;

for(int i=1;i<t_contentlength();i++){

textfieldsetText(textfieldgetText()+t_contentcharAt(i));

}

}else{

textfieldsetText("-"+t_content);

}

}

//所按下的按钮为+按钮

if(sequals("+")){

switch(pkey){

case 0:

data2+=DoubleparseDouble(textfieldgetText());

break;

case 1:

data2+=DoubleparseDouble(textfieldgetText());

break;

case 2:

data2+=DoubleparseDouble(textfieldgetText());

break;

case 3:

if(textfieldgetText()equals("0")){

textfieldsetText("除数不能为零");

number=false;

}else{

key=-1;

data2/=data1;

textfieldsetText(DoubletoString(data2));

break;

}

default:

data2=DoubleparseDouble(textfieldgetText());

}

pkey=key=0;

textfieldsetText("");

}

//第五页

//所按下的按钮为-按钮

if(sequals("-")){

switch(pkey){

case 0:

data2+=DoubleparseDouble(textfieldgetText());

break;

case 1:

data2+=DoubleparseDouble(textfieldgetText());

break;

case 2:

data2+=DoubleparseDouble(textfieldgetText());

break;

case 3:

if(textfieldgetText()equals("0")){

textfieldsetText("除数不能为零");

number=false;

}else{

key=-1;

data2/=data1;

textfieldsetText(DoubletoString(data2));

break;

}

default:

data2=DoubleparseDouble(textfieldgetText());

}

pkey=key=1;

textfieldsetText("");

}

//所按下的按钮为按钮

if(sequals("")){

switch(pkey){

case 0:

data2+=DoubleparseDouble(textfieldgetText());

break;

case 1:

data2+=DoubleparseDouble(textfieldgetText());

break;

case 2:

data2+=DoubleparseDouble(textfieldgetText());

break;

case 3:

if(textfieldgetText()equals("0")){ // 第六页

textfieldsetText("除数不能为零");

number=false;

}else{

key=-1;

data2/=data1;

textfieldsetText(DoubletoString(data2));

break;

}

default:

data2=DoubleparseDouble(textfieldgetText());

}

pkey=key=2;

textfieldsetText("");

}

//所按下的按钮为/按钮

if(sequals("/")){

switch(pkey){

case 0:

data2+=DoubleparseDouble(textfieldgetText());

break;

case 1:

data2+=DoubleparseDouble(textfieldgetText());

break;

case 2:

data2+=DoubleparseDouble(textfieldgetText());

break;

case 3:

if(textfieldgetText()equals("0")){

textfieldsetText("除数不能为零");

number=false;

}else{

key=-1;

data2/=data1;

textfieldsetText(DoubletoString(data2));

break;

}

default:

data2=DoubleparseDouble(textfieldgetText());

}

pkey=key=3;

textfieldsetText("");

} //第七页

//所按下的按钮为=,求结果

if(sequals("=")&&number){

//如果不是第一次按下=按钮

if(pkey==5){

switch(pkey){

case 0:

data2+=data1;

textfieldsetText(DoubletoString(data2));

break;

case 1:

data2-=data1;

textfieldsetText(DoubletoString(data2));

break;

case 2:

data2=data1;

textfieldsetText(DoubletoString(data2));

break;

case 3:

if(textfieldgetText()equals("0")){

textfieldsetText("除数不能为零");

number=false;

}else{

data2/=data1;

textfieldsetText(DoubletoString(data2));

break;

}

}

}

//如果是第一次按下=按钮

else{

data1=DoubleparseDouble(textfieldgetText());

switch(key){

case 0:

key=-1;

data2+=DoubleparseDouble(textfieldgetText());

textfieldsetText(DoubletoString(data2));

break;

case 1:

key=-1;

data2-=DoubleparseDouble(textfieldgetText());

textfieldsetText(DoubletoString(data2)); //第八页

break;

case 2:

key=-1;

data2=DoubleparseDouble(textfieldgetText());

textfieldsetText(DoubletoString(data2));

break;

case 3:

if(textfieldgetText()equals("0")){

textfieldsetText("除数不能为零");

number=false;

}else{

key=-1;

data2/=DoubleparseDouble(textfieldgetText());

textfieldsetText(DoubletoString(data2));

break;

}

}

}

pkey=5;

}

//按下的按钮时数字按钮

else{

switch(scharAt(0)){

case'0':

case'1':

case'2':

case'3':

case'4':

case'5':

case'6':

case'7':

case'8':

case'9':

number=true;

textfieldsetText(textfieldgetText()+s);

break;

//对的处理

case'':

t_content=textfieldgetText();

boolean g=false; //第九页

//对计算机栏中的数据进行检验

//如果其中有小数点,则用户单击该按钮时不在添加小数点

for(int i=0;i<t_contentlength();i++){

if(t_contentcharAt(i)==''){

g=true;

break;

}

}

//数据中已经有小数点

if(g==true)

break;

// 数据中没有小数点,当用户单击小数点时添加小数点

if(g==false)

textfieldsetText(t_content+"");

}

}

}

private String Integer(String string) {

// TODO Auto-generated method stub

return null;

}

}

以上就是关于java程序,用图形实现乘除运算全部的内容,包括:java程序,用图形实现乘除运算、用Java语言编写以下程序:、一、编写Java程序,模拟简单的计算器。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9721372.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存