总结:看看写的多漂亮啊

package com.test4;import java.awt.*;
import java.awt.event.*;import javax.swing.*;public class Test {public static void main(String[] args) {Calculator_Frame cf = new Calculator_Frame();}}class Calculator_Frame extends JFrame implements ActionListener {boolean readyNextNumber = true;double number1 = 0;double number2 = 0;char op = '\0';JLabel jl;JPanel jp;JButton jb_1, jb_2, jb_3, jb_4, jb_5, jb_6, jb_7, jb_8, jb_9, jb_0, jb_jia,jb_jian, jb_cheng, jb_chu, jb_dian, jb_deng;String str;Calculator_Frame() {jl = new JLabel("0.0", JLabel.RIGHT);jl.setFont(new Font("Dialog", 1, 17));jp = new JPanel(new GridLayout(4, 4));jb_0 = new JButton("0");jb_9 = new JButton("9");jb_1 = new JButton("1");jb_2 = new JButton("2");jb_3 = new JButton("3");jb_4 = new JButton("4");jb_5 = new JButton("5");jb_6 = new JButton("6");jb_7 = new JButton("7");jb_8 = new JButton("8");jb_jia = new JButton("+");jb_jian = new JButton("-");jb_cheng = new JButton("*");jb_chu = new JButton("/");jb_deng = new JButton("=");jb_dian = new JButton(".");jb_0.addActionListener(this);jb_1.addActionListener(this);jb_2.addActionListener(this);jb_3.addActionListener(this);jb_4.addActionListener(this);jb_5.addActionListener(this);jb_6.addActionListener(this);jb_7.addActionListener(this);jb_8.addActionListener(this);jb_9.addActionListener(this);jb_jia.addActionListener(this);jb_jian.addActionListener(this);jb_cheng.addActionListener(this);jb_chu.addActionListener(this);jb_dian.addActionListener(this);jb_deng.addActionListener(this);jp.add(jb_1);jp.add(jb_2);jp.add(jb_3);jp.add(jb_jia);jp.add(jb_4);jp.add(jb_5);jp.add(jb_6);jp.add(jb_jian);jp.add(jb_7);jp.add(jb_8);jp.add(jb_9);jp.add(jb_cheng);jp.add(jb_0);jp.add(jb_dian);jp.add(jb_deng);jp.add(jb_chu);this.add(jl, BorderLayout.NORTH);this.add(jp, BorderLayout.CENTER);this.setBounds(100, 10, 200, 300);this.setDefaultCloseOperation(3);this.setVisible(true);}public void actionPerformed(ActionEvent e) {str = e.getActionCommand();// 获取按钮上的字符串// 判断是否点击的数字if (str.equals("0") || str.equals("1") || str.equals("2")|| str.equals("3") || str.equals("4") || str.equals("5")|| str.equals("6") || str.equals("7") || str.equals("8")|| str.equals("9") || str.equals(".")) {if (readyNextNumber) {// 判断是否想输入一个新数字jl.setText(str);readyNextNumber = false;} else {jl.setText(jl.getText() + str);// 把label上的字符串加上刚刚点击的字符串}// 判断是否点击的操作符} else if (str.equals("+")) {readyNextNumber = true;if(op == '\0'){number1 = Double.parseDouble( jl.getText());}else{number2 = Double.parseDouble( jl.getText());jl.setText(count()+"");number1 = count();}op = '+';}else if(str.equals("-")){readyNextNumber = true;if(op == '\0'){number1 = Double.parseDouble( jl.getText());}else{number2 = Double.parseDouble( jl.getText());jl.setText(count()+"");number1 = count();}op = '-';}else if(str.equals("*")){readyNextNumber = true;if(op == '\0'){number1 = Double.parseDouble( jl.getText());}else{number2 = Double.parseDouble( jl.getText());jl.setText(count()+"");number1 = count();}op = '*';}else if(str.equals("/")){readyNextNumber = true;if(op == '\0'){number1 = Double.parseDouble( jl.getText());}else{number2 = Double.parseDouble( jl.getText());jl.setText(count()+"");number1 = count();}op = '/';}else if(str.equals("=")){readyNextNumber = true;number2 = Double.parseDouble( jl.getText());jl.setText(count()+"");op = '\0';}}public double count(){double result = 0;switch (op) {case '+':result= number1 + number2;break;case '-':result=number1 - number2;break;case '*':result=number1 * number2;break;case '/':result=number1 / number2;break;default:break;}return  result;}}

  

转载于:https://www.cnblogs.com/langlove/p/3506383.html

java代码---------陈勇老师的相关推荐

  1. java编程输入学生成绩 判断最高分,java代码初学者适用,输入学生成绩,符合要求的过~~~~注意数据范围...

    总结:没有基础,我从点滴开始, package com.aaa; import java.util.Scanner; //输入"repate "次数,输入学生成绩,低于60分,输出 ...

  2. Java重构与TDD测试驱动开发实际案例一-陈勇-专题视频课程

    Java重构与TDD测试驱动开发实际案例一-2117人已学习 课程介绍         本课程将高深的重构与TDD理论埋藏在一个实际案例中,深入浅出地演示了重构与TDD的完整步骤. 在这个真实的案例中 ...

  3. 避免在JSP中写java代码

    作者:蜗牛学院CTO李懿老师 ​自从十年前的taglibs(如JSTL)和EL(表达语言,这些事情)诞生以来,在JSP中使用scriptlet(<% %>这些东西)的确是非常不鼓励的. 小 ...

  4. Java培训分享5个常用Java代码混淆器

    对于Java程序员来说,如果辛辛苦苦写的代码被人摽窃走,将是一件非常恼火的事情.如何保护自己的代码呢,可以通过逆向工程反编译得到Java程序的源代码,这种反编译工具之一就是JAD,尽可能给反编译人员制 ...

  5. 浅谈:数据结构之单链表,java代码演示单链表

    单链表 本文是观看尚硅谷韩老师视频学习总结,部分来源网络. 单链表介绍 链表是一种物理存储单元上非连续.非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的.链表由一系列结点(链表中每 ...

  6. java文件复制速度_【Java】Java代码拷贝文件的速度

    Java代码拷贝文件的速度究竟有多快? 前言 最近学习Java到了流处理,其中有种流叫FileInputStream和FileOutputStream,简单来说,就是操作文件的,老师给我们示范了一个非 ...

  7. java代码_Java 代码实现排序算法

       阅读本文约需要8分钟  大家好,我是你们的导师,我每天都会在这里给大家分享一些干货内容(当然了,周末也要允许老师休息一下哈).上次老师跟大家分享了下SpringBoot+Gradle+ MyBa ...

  8. Java代码精简之道

    前言 古语有云: 道为术之灵,术为道之体:以道统术,以术得道. 其中:"道"指"规律.道理.理论","术"指"方法.技巧.技术&q ...

  9. 为你的应用程序添加动态Java代码

    原来一直以为,JAVA程序都必须在执行前被编译,而不是在运行时可以动态加载,看了这篇文章后,才知道这么一回事,看来JAVA里面的东西没有熟悉还有的是,不要以人好像什么都懂都了. 作者:Amydeng; ...

最新文章

  1. 已知空间一点到另外两点直线的距离
  2. UNet为什么在医学图像分割表现好?
  3. 【Java】在Eclipse中使用JUnit4进行单元测试(初级篇)
  4. 一个美国老工程师的心理话: 给年轻工程师的十大忠告
  5. java创建对象 的初始化顺序
  6. 《Node应用程序构建——使用MongoDB和Backbone》一第 1 章 介绍与总览1.1 打造一个社交网络...
  7. springboot profile_SpringBoot简单配置
  8. NeHe OpenGL第四十六课:全屏反走样
  9. insert exec 语句不能嵌套_Python基础入门知识点——if 语句简介
  10. 麦库:盛大的知识管理软件
  11. 【java】高并发之限流 RateLimiter使用
  12. delphi 第三方组件 log4cpp.dll
  13. Java基础之泛型的使用
  14. [.net 面向对象程序设计进阶] (15) 缓存(Cache)(二) 利用缓存提升程序性能
  15. Layui 表格table自定义每一列的样式
  16. After Effects - Bodymovin 插件验货及感受
  17. 《别闹了,费曼先生》读书笔记
  18. ASP.NET中IsPostBack详解
  19. spurious wakeup 虚假唤醒
  20. 淘宝联盟API对接过程记录(1)

热门文章

  1. 学习笔记(1)stm32h743和ADXL355的SPI通信,基于cubeMX和keil5MDK平台,采用HAL库编程,代码已模块化处理
  2. 新概念2 课文和单词(10)
  3. [音乐孩子王08 最终回][大野智/千纱/片瀬那奈/丸山隆平]
  4. map写入文件及从文件读出
  5. mysql数据库查询练习二-【比经理工资还高员工姓名】【查找重复的邮箱】
  6. 【JavaScript框架封装】自己动手封装一个涵盖JQuery基本功能的框架及核心源码分享(单文件版本)
  7. English trip V2-B 6 A Trip to Ireland 爱尔兰之旅 Teacher:Russell
  8. python计算电费
  9. 一年手机信息安全囧事大调查,你有没有中招
  10. HBase轻松入门之HBase架构图解析