总结:看看写的多漂亮啊

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;
} }

  

java代码---------陈勇老师的的更多相关文章

  1. java代码从键盘输入n的值,计算1+1/2+1/3+...+1/n的值,,

    总结:谢谢陈勇老师.很棒的指导.超有爱. 总是不思考++++如内存的分析.堆和栈.堆内存里对象,字符串,栈里基本数据类型 来龙去脉,属性方法的调用,都不是很理解.... package com.c2; ...

  2. java 代码

    java 里的 pandas tablesaw DataFrame 再有就是 spark 了 java 代码规范 Java8特性详解 lambda表达式 Stream Sonar 规则检测 sprin ...

  3. 01 Java 代码是怎么运行的

    Java代码运行的方式 1:在开发工具中运行 2:双击 jar 文件运行 3:在命令行中运行 4:在网页中运行 上述运行方式都离不开 JRE,也就是 Java 运行时环境.实际上 JRE 仅包含运行 ...

  4. 干货 | 10分钟带你彻底了解column generation(列生成)算法的原理附java代码

    OUTLINE 前言 预备知识预警 什么是column generation 相关概念科普 Cutting Stock Problem CG求解Cutting Stock Problem 列生成代码 ...

  5. JAVA代码规范 标签: java文档工作 2016-06-12 21:50 277人阅读 评论(5) 收藏

    开始做java的ITOO了,近期的工作内容就是按照代码规范来改自己负责的代码,之前做机房收费系统的时候,也是经常验收的,甚至于我们上次验收的时候,老师也去了.对于我们的代码规范,老师其实是很重视的,他 ...

  6. 对一致性Hash算法,Java代码实现的深入研究

    一致性Hash算法 关于一致性Hash算法,在我之前的博文中已经有多次提到了,MemCache超详细解读一文中"一致性Hash算法"部分,对于为什么要使用一致性Hash算法.一致性 ...

  7. 怎样编写高质量的java代码

    代码质量概述     怎样辨别一个项目代码写得好还是坏?优秀的代码和腐化的代码区别在哪里?怎么让自己写的代码既漂亮又有生命力?接下来将对代码质量的问题进行一些粗略的介绍.也请有过代码质量相关经验的朋友 ...

  8. 数据结构笔记--二叉查找树概述以及java代码实现

    一些概念: 二叉查找树的重要性质:对于树中的每一个节点X,它的左子树任一节点的值均小于X,右子树上任意节点的值均大于X. 二叉查找树是java的TreeSet和TreeMap类实现的基础. 由于树的递 ...

  9. java代码的初始化过程研究

        刚刚在ITeye上看到一篇关于java代码初始化的文章,看到代码我试着推理了下结果,虽然是大学时代学的知识了,没想到还能做对.(看来自己大学时掌握的基础还算不错,(*^__^*) 嘻嘻……)但 ...

随机推荐

  1. ElementTree之Xml文档处理

    ElementTree: 表示整个XML层级结构 Element: 表示树形结构中所有的父节点 SubElement: 表示树形结构中所有的子节点 有些节点既是父节点,又是子节点 下面来看下这两个类的 ...

  2. log4cpp之Appender

    body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...

  3. ZK单机最简配置

    修改zk home/conf下的zoo_sample.cfg,重新命名为zoo.cfg. 修改配置为: dataDir=/root/data/zookeeper-data clientPort=218 ...

  4. python的基础

    一. print(1 or 1 > 4) # 1  (从左到右1为True就结束了) print(1 > 1 or 3) # 3print(3 > 1 or 3 or 3 > ...

  5. OK335x mksd.sh hacking

    #! /bin/sh # mk3PartSDCard. # Licensed under terms of GPLv2 # 参考文档: # . sfidsk创建可启动分区问题 # http://seg ...

  6. pymysql中的参数及方法

    1.connect(参数) Connection = Connect(*args, **kwargs) Establish a connection to the MySQL database. Ac ...

  7. SQL查询执行步骤

    1.总结 执行顺序 3.select ...聚合函数 from 表名 1.where ... 2.group by ... 4.having ... 5.order by ... 6.limit .. ...

  8. RankNet

    RankNet 论文的笔记:Learning to rank using gradient descent. 模型 特征 \(\mathbf x_i \in \mathbb R^d\) 模型函数:\( ...

  9. C#与sqlserver开发问题

    最近不停的在考虑C#读取数据性能问题第一种使用ado拼接sql连接数据库第二种使用ado调用存储过程第三种使用entityframework加linq第四种使用反射IList<T> 1.从 ...

  10. SEO - H标签

    前言 这两天在做网站的SEO.虽然之前SEO的资料看过很多,但是因为正职是美工的缘故,SEO的具体实施参与的较少.现在的公司有点特殊,SEO团队基本不懂代码,所以需要参与的比较多.以下内容主要是通过自 ...