用JAVA编写的傻瓜计算器

作用:

1.可以实现加法、减法、乘法、除法简单运算且是单一运算,不可混合使用。

2.CE为清除键

3.没有小数点O(∩_∩)O

思路:

创建JFrame窗口,设置标题,创建JButton,创建文本框JTextField用作显示。

先定义各种按钮类型,用作成员。定义窗口方法对窗口进行设置。定义按钮事件方法,每个按钮的

每次点下在文本框都会进行打印。以运算符为界限对字符串进行分割,并把分割后的字符串放入新

建的数组当中。对字符串数组内容访问转换为整数类型,进行运算。运算的结果为double类型的并

把结果打印到文本框中。

成品:

代码实现:

package test1;
import javax.print.attribute.standard.JobMessageFromOperator;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;public class Window extends JFrame{private JButton ADD=new JButton("+");private JButton SUB=new JButton("-");private JButton SUM=new JButton("x");private JButton DIV=new JButton("/");private JButton l=new JButton("0");private JButton y=new JButton("1");private JButton e=new JButton("2");private JButton s=new JButton("3");private JButton s4=new JButton("4");private JButton w=new JButton("5");private JButton l6=new JButton("6");private JButton q=new JButton("7");private JButton b=new JButton("8");private JButton j=new JButton("9");private JButton dengyu=new JButton("=");private JButton qingchu=new JButton("CE");private JTextField jt=new JTextField();private String shuju;public Window(){window();addJb();addjt();add();this.setVisible(true);}public void window(){//窗体大小this.setSize(570,550);//窗体标题this.setTitle("傻瓜计算器");//解除窗体的默认设置this.setLayout(null);//窗体关闭程序停止this.setDefaultCloseOperation(3);//窗体位于屏幕中央this.setLocationRelativeTo(null);}
//按钮大小位置设置public void addJb(){ADD.setBounds(350,150,90,90);ADD.setFont(new Font("宋体", Font.PLAIN, 50));this.add(ADD);SUB.setBounds(450,150,90,90);SUB.setFont(new Font("宋体", Font.PLAIN, 50));this.add(SUB);SUM.setBounds(350,250,90,90);SUM.setFont(new Font("宋体", Font.PLAIN, 50));this.add(SUM);DIV.setBounds(450,250,90,90);DIV.setFont(new Font("宋体", Font.PLAIN, 50));this.add(DIV);y.setBounds(10,150,90,90);y.setFont(new Font("宋体", Font.PLAIN, 50));this.add(y);e.setBounds(110,150,90,90);e.setFont(new Font("宋体", Font.PLAIN, 50));this.add(e);s.setBounds(210,150,90,90);s.setFont(new Font("宋体", Font.PLAIN, 50));this.add(s);s4.setBounds(10,250,90,90);s4.setFont(new Font("宋体", Font.PLAIN, 50));this.add(s4);w.setBounds(110,250,90,90);w.setFont(new Font("宋体", Font.PLAIN, 50));this.add(w);l6.setBounds(210,250,90,90);l6.setFont(new Font("宋体", Font.PLAIN, 50));this.add(l6);q.setBounds(10,350,90,90);q.setFont(new Font("宋体", Font.PLAIN, 50));this.add(q);b.setBounds(110,350,90,90);b.setFont(new Font("宋体", Font.PLAIN, 50));this.add(b);j.setBounds(210,350,90,90);j.setFont(new Font("宋体", Font.PLAIN, 50));this.add(j);dengyu.setBounds(10,450,530,50);dengyu.setFont(new Font("宋体", Font.PLAIN, 50));this.add(dengyu);qingchu.setBounds(450,350,90,90);qingchu.setFont(new Font("宋体", Font.PLAIN, 50));this.add(qingchu);l.setBounds(350,350,90,90);l.setFont(new Font("宋体", Font.PLAIN, 50));this.add(l);}//文本框设置public void addjt(){jt.setBounds(10,50,530,80);jt.setFont(new Font("宋体", Font.PLAIN, 40));this.add(jt);}
//添加按钮事件public void add(){y.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {number("1");}});e.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {number("2");}});qingchu.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {// jt.setText(jt.getText().substring(0, jt.getText().length() - 1));jt.setText("");}});s.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {number("3");}});s4.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {number("4");}});w.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {number("5");}});l6.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {number("6");}});q.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {number("7");}});b.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {number("8");}});j.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {number("9");}});l.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {number("0");}});ADD.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {number("+");}});SUB.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {number("-");}});SUM.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {number("x");}});DIV.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {number("/");}});dengyu.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {deng();}});}//按钮输出数字方法public void number(String a){jt.setText(jt.getText() + a);}//等号运算方法public  void deng(){//读取文本框字符串String str=jt.getText();//字符串拆成字符char [] ch=str.toCharArray();String[] ing=new String[ch.length];int[] a=new int[ing.length];double sum=0;for(int i=0;i<ch.length;i++){if(ch[i]=='+'){ing=str.split("+");for (int j = 0; j <ing.length ; j++) {a[j]=Integer.parseInt(ing[j]);}for(int k=0;k<a.length;k++){if(a[k]!=0){sum+=a[k];}}jt.setText(String.valueOf(sum));}else if (ch[i]=='-'){ing=str.split("-");for (int j = 0; j <ing.length ; j++) {a[j]=Integer.parseInt(ing[j]);}for(int k=1;k<a.length;k++){if(a[k]!=0){sum=a[0];sum-=a[k];}}jt.setText(String.valueOf(sum));}else if (ch[i]=='x'){ing=str.split("x");for (int j = 0; j <ing.length ; j++) {a[j]=Integer.parseInt(ing[j]);}for(int k=1;k<a.length;k++){if(a[k]!=0){sum=a[0];sum*=a[k];}}jt.setText(String.valueOf(sum));}else if (ch[i]=='/'){ing=str.split("/");for (int j = 0; j <ing.length ; j++) {a[j]=Integer.parseInt(ing[j]);}for(int k=1;k<a.length;k++){if(a[k]!=0){sum=a[0];sum/=a[k];}}jt.setText(String.valueOf(sum));}}
}}

PS:

初来乍到的小白一枚,里边运用到了窗口、组件、监视器。初学者可以简单参考一下。顺便加深一下知识点的印象。学习就应该循序渐进,一步一个脚印来。里边多少会有些问题希望在你们手里可以得到改进,同时你也可以学到新的知识。O(∩_∩)O

JAVA制作的简易计算器——傻瓜计算器相关推荐

  1. 使用Java制作一个简易的远控终端

    使用Java制作一个简易的远控终端 远控终端的本质 1.服务端(攻击者)传输消息 ----> socket连接 ----> 客户端(被攻击者)接收消息 2.客户端执行消息内容(即执行服务端 ...

  2. java 做的简易进制计算器

    import javax.swing.*; import java.awt.event.*; import java.awt.*; public class Scale {JFrame f;JPane ...

  3. 如何用Java制作一个简易日历

    简易日历制作 记录一下Java实现的一个日历小程序,效果图如下: 实现以上的效果,我们需要用到两个类:SimpleDateFormat和Calendar. 首先看看这两个类的用法: 类 SimpleD ...

  4. 怎么用java做日历_如何用Java制作一个简易日历

    简易日历制作 记录一下Java实现的一个日历小程序,效果图如下: 实现以上的效果,我们需要用到两个类:SimpleDateFormat和Calendar. 首先看看这两个类的用法: 类 SimpleD ...

  5. java 制作简易日历_如何用Java制作一个简易日历

    简易日历制作 记录一下Java实现的一个日历小程序,效果图如下: 实现以上的效果,我们需要用到两个类:SimpleDateFormat和Calendar. 首先看看这两个类的用法: 类 SimpleD ...

  6. 用java编写日历_如何用Java制作一个简易日历

    简易日历制作 记录一下Java实现的一个日历小程序,效果图如下: 实现以上的效果,我们需要用到两个类:SimpleDateFormat和Calendar. 首先看看这两个类的用法: 类 SimpleD ...

  7. 用java制作的简易倒计时器(主要可用于考试系统中考试剩余时间显示)

    import java.awt.BorderLayout; import java.awt.Font; import java.text.SimpleDateFormat; import java.u ...

  8. 用java制作一个简易抽签器

    最近闲来无事,想用Java编写一个随机抽签器,最终编写后的运行结果是这样的 下面说一下怎么具体实现,非常简单. 首先,要想出现这个滚动标签,首先必须要有一个窗口来承载它,所以要在main()方法中创建 ...

  9. java仿windows7计算器界面,java制作仿win7计算器之一计算器的图形界面的设计

    再结合网上各路神人及之前写的博客Swing编程方面步骤,如下: package calPack; import javax.swing.*; import java.awt.*; import jav ...

最新文章

  1. 8Manage:如何变革性的加强企业采购管理?
  2. oracle基础建表
  3. 1.4 Set集合:HashSet和TreeSet类
  4. java判断或_Java 条件判断
  5. 子组件调用父组件方法_Vuejs组件(一)组件的注册使用方法
  6. std::unique_ptr<T>与boost::scoped_ptr<T>的特殊性
  7. 微信上线青少年模式,开启后这些功能无法使用
  8. [贪心|双指针] leetcode 11 盛最多水的容器
  9. 编程修养 阅读笔记三
  10. mysql查询执行了1s_查询执行慢的SQL
  11. 传智播客Java引用和数值类型思考
  12. R语言书籍学习02 《R语言数据分析、挖掘建模与可视化》-第一章 R语言必备基础知识
  13. 华为防火墙IPsec点对点配置解析
  14. 树莓派如何与物联网平台交互(搭建一个树莓派网关)(一)
  15. Android P SELinux (四) CTS neverallow处理总结
  16. 网盘可以良心到什么程度? 试试MEGA吧!
  17. 简述 AST 抽象语法树
  18. TestStand-单执行界面
  19. Linux中elasticsearch:root给普通用户授权总是出现输入密码Sory try again…
  20. 如何在Unity 3D中掷骰子

热门文章

  1. 【C语言】if 语句的相关内容
  2. 在ubuntu 下安装 遇到ttf-mscorefonts-installer 问题
  3. 程序员需要观看的书籍
  4. 脉冲压缩(匹配滤波)
  5. 展讯软件开发的一般流程
  6. 2021-8-4 数据库课堂笔记Day02
  7. 一个类的例子--员工工资
  8. php 压测流量回放,Web流量复制和压力测试工具Gor
  9. Linux 设置开机启动项的几种方法
  10. 无线通信系统的定义与组成