该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

希望能帮忙注释,按钮的大小也不一样,排版很不整齐,小数点部分计算总是出错,我认为是输入数据为String型的原因,但不知道怎么修改。。如能就这两点作出改动,感激不尽

import java.awt.*;

import javax.swing.*;

import java.awt.event.*;

class Counter extends WindowAdapter

{

static JFrame f=new JFrame("计算器");

static JTextField text1=new JTextField("0.");

static String source="";

static String cal="";

static String object="";

static boolean flag=false;

static boolean flag1=true;

static boolean flag2=false;

public void init()

{

try

{

Container c=f.getContentPane();

JPanel pan1=new JPanel();

JButton b1=new JButton("1");

JButton b2=new JButton("2");

JButton b3=new JButton("3");

JButton b4=new JButton("4");

JButton b5=new JButton("5");

JButton b6=new JButton("6");

JButton b7=new JButton("7");

JButton b8=new JButton("8");

JButton b9=new JButton("9");

JButton b0=new JButton("0");

JButton b11=new JButton("+");

JButton b12=new JButton("-");

JButton b13=new JButton("*");

JButton b14=new JButton("/");

JButton b15=new JButton(".");

JButton b16=new JButton("=");

JButton bclar=new JButton("C");

JButton bbc=new JButton("Backspace");

text1.setHorizontalAlignment(JTextField.RIGHT);

c.add(text1,"North");

c.add(pan1);

A aa=new A();

Result re=new Result();

Opertion op=new Opertion();

Clar cl=new Clar();

Backspace bc=new Backspace();

b1.addActionListener(aa);

b2.addActionListener(aa);

b3.addActionListener(aa);

b4.addActionListener(aa);

b5.addActionListener(aa);

b6.addActionListener(aa);

b7.addActionListener(aa);

b8.addActionListener(aa);

b9.addActionListener(aa);

b0.addActionListener(aa);

b11.addActionListener(op);

b12.addActionListener(op);

b13.addActionListener(op);

b14.addActionListener(op);

b16.addActionListener(re);

b15.addActionListener(aa);

bclar.addActionListener(cl);

bbc.addActionListener(bc);

pan1.add(b1);

pan1.add(b2);

pan1.add(b3);

pan1.add(b11);

pan1.add(b4);

pan1.add(b5);

pan1.add(b6);

pan1.add(b12);

pan1.add(b7);

pan1.add(b8);

pan1.add(b9);

pan1.add(b13);

pan1.add(b0);

pan1.add(b15);

pan1.add(b16);

pan1.add(b14);

pan1.add(bclar);

pan1.add(bbc);

f.setSize(200,220);

f.setVisible(true);

}

catch(Exception e)

{

System.out.println(e.getMessage());

}

}

class A implements ActionListener

{

public void actionPerformed(ActionEvent e)

{

String a=text1.getText();

String s=e.getActionCommand();

if(a.equals("0.")||a.equals("+")||a.equals("-")||a.equals("*")||a.equals("/"))

text1.setText(s);

else {

if(flag2)

{

text1.setText(s);

flag2=false;

}

else

text1.setText(a+s);

}

}

}

class Opertion implements ActionListener

{

public void actionPerformed(ActionEvent e)

{

cal=e.getActionCommand();

if(flag1==true)

source=text1.getText();

text1.setText(cal);

flag1=false;

flag=true;

}

}

class Result implements ActionListener

{

public void actionPerformed(ActionEvent e)

{

double num1;

num1=Double.parseDouble(source);

object=text1.getText();

double num2;

num2=Double.parseDouble(object);

double result=0;

if(cal.equals("+"))

result=num1+num2;

if(cal.equals("-"))

result=num1-num2;

if(cal.equals("*"))

result=num1*num2;

if(cal.equals("/"))

if(num2==0)

text1.setText("除数不能为0");

else

result=num1/num2;

String s1=Double.toString(result);

text1.setText(s1);

flag1=true;

flag2=true;

}

}

class Clar implements ActionListener

{

public void actionPerformed(ActionEvent e)

{

text1.setText("0.");

}

}

class Backspace implements ActionListener

{

public void actionPerformed(ActionEvent e)

{

String s=text1.getText();

char[] s1=s.toCharArray();

if(s.length()>=2)

{

String s2=new String(s1,0,s.length()-1);

text1.setText(s2);

}

}

}

public static void main(String[] args)

{

Counter count=new Counter();

f.setResizable(false);

count.init();

}

public void windowClosing(WindowEvent e){

System.exit(1);

}

public void windowOpened(WindowEvent e){}

public void windowIconified(WindowEvent e){}

public void windowDeiconified(WindowEvent e){}

public void windowClosed(WindowEvent e){}

public void windowActivated(WindowEvent e){}

public void windowDeactivated(WindowEvent e){}

}

java计算器程序加编辑帮助_这里有个JAVA计算器的小程序,希望帮忙加下注释,少许修改...相关推荐

  1. 微信小程序哪个能唱歌_微信K歌最实用的小程序有哪些?求推荐几个有意思的!...

    对于喜欢唱歌的小伙伴们来说,适当时可以减减压,放松一下心情.其实音乐是靠感受出来的,心情不好的心情和心情好的时候唱歌,是完全不一样的.之前有小伙伴问我,微信K歌最实用的小程序有哪些?求推荐几个有意思的 ...

  2. python程序如何做界面_如何用Python给已有小程序做界面?

    我尝试过很多次用 Python 进行 GUI 编程,就是你说的做界面.最后的结果就是,人生苦短,做 GUI 我不用 Python(也有可能我是被微软给宠坏了:) 但是你说的这种,很简单的界面,使用 P ...

  3. Java后台微信点餐小程序开发最新版笔记,Springboot+Mysql+Freemarker+Bootstrap+微信小程序实现扫码点餐小程序,包含语音提示,微信消息推送,网页管理后台

    由于之前的Java后台微信点餐小程序有些知识点过时了,所以今天重新出一版,把里面过时的知识点更新下 前五章是部署笔记,后面是知识点的详细讲解,大家可以先看部署笔记,部署起来后,再跟着详细知识学习. 第 ...

  4. 微信小程序云开发用户身份登录_你必须要掌握的微信小程序云开发

    微信小程序开发已经成为目前最火爆的技能之一,无论是在求职.毕设.兴趣培养等方面都已经成为一项必备技能,而小程序云开发技术的出现更是点燃了整个小程序生态圈. 在2019微信公开课PRO小程序分论坛上,腾 ...

  5. 件工程项目开发最全文档模板_一文带你了解微信小程序社区和小程序开发

    微信小程序越来越受欢迎,很多小白也想制作自己的小程序.小白若想自己顺利制作,有两种方法:一种是下载安装微信官方开发者工具,然后写代码开发:一种是使用第三方小程序制作工具,选个现成的小程序模板,自己再稍 ...

  6. 微信开发者工具 wxmi修改模版颜色_网站建设公司讲解:微信小程序的开发者工具界面...

    网站建设公司深圳市博纳网络信息技术有限公司()讲解:微信小程序的开发者工具界面 创建项目后,进入到微信开发者工具界面,界面大致可以分为6个区域:①菜单栏区域,②模拟器.编辑器.调试器显示与隐藏区域,③ ...

  7. 一个程序如何连接到外网_如何从头开始开发一个微信小程序

    网上有很多的人在问:怎么开发一个微信小程序?今天我来给大家详细讲讲如何申请开发并部署一个微信小程序,大家看完这篇文章后就能够自己运营一个属于自己的小程序了. 现在的小程序有百度小程序,头条小程序,支付 ...

  8. 微信公众号发送小程序卡片_微信公众号里怎么添加小程序-如何在微信[[公众号]]添加小程序卡片-微信关联小程序...

    参考官方Demo 1.进入公众号,选择「关联小程序」后,微信公众号运营者用手机扫码进行认证,并输入小程序的AppID即可. 2.腾讯地图+小程序appID:wx7643d5f831302ab0 3. ...

  9. 超市微信小程序怎么做_微信小程序便利店怎么开?便利店和百货超市怎么开发小程序?...

    微信小程序便利店怎么开?便利店和百货超市怎么开发小程序?下面跟随小编一起来看看吧! 现在很多商家还在小程序是什么,流行的说法是开店到微信,创建一个互联网离线模式,将近五公里的小程序显示出来,只要别人用 ...

最新文章

  1. Java自学路线总结,已Get腾讯Offer
  2. html 后台参数attribute_平台管理后台与商家菜单资源管理:商家权限及其菜单资源管理设计...
  3. 全球及中国汽车涂料市场前景态势与投资渠道分析报告2022版
  4. hdu 1754 I Hate It(分块做法)
  5. html5之api,HTML5之API(示例代码)
  6. 全国首个!北京手机一卡通开卡费今起取消
  7. map/reduce之间的shuffle,partition,combiner过程的详解
  8. Android5.0(Lollipop) BLE蓝牙4.0+浅析code(二)
  9. SSM高校实验室安全培训系统设计与实现.docx
  10. python设计棋牌游戏
  11. linux整站下载工具
  12. SourceOffSite Server和Visual SourceSafe 6.0d锁死问题的解决
  13. 4.序列化器-Serializer
  14. idea修改注释模板
  15. 有向图的拓补排序算法
  16. 免费wifi帮助文档
  17. IT从业者的学习规划——学习者系列文章开篇
  18. 软件默认安装在C盘解决方案 eg:google浏览器、XMind脑图工具等
  19. 初学python找不到的类都到这儿来
  20. java ftp删除_java ftp实现文件上传和删除

热门文章

  1. TFS2008 基本安装
  2. Erlang模块gen_tcp翻译
  3. IHttpHandler的学习(0)
  4. Maven简单的配置Junit测试及使用简单的mock
  5. Linux-进程内存占用情况
  6. 转:关于CCDISK的优化
  7. 几何间隔、函数间隔和||W||
  8. 机器学习和深度学习到底怎么学?顶尖专家吴恩达告诉你
  9. 关于__VA_ARGS__的说明
  10. tps 数据库写并发衡量_MPP数据库简介