计算器的程序代码java_java 简单的计算器程序实例代码
java 简单的计算器程序
实现实例:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class calculator
{
public static void main(string[] args)
{
eventqueue.invokelater(new runnable()
{
public void run()
{
calculatorframe frame = new calculatorframe();
frame.setdefaultcloseoperation(jframe.exit_on_close);
frame.setvisible(true);
}
});
}
}
/**
* a frame with a calculator panel.
*/
class calculatorframe extends jframe
{
public calculatorframe()
{
settitle("calculator");
calculatorpanel panel=new calculatorpanel();
add(panel);
pack();
}
}
class calculatorpanel extends jpanel
{
private jbutton display;
private jpanel panel;
private double result;
private string lastcommand;
private boolean start;
public calculatorpanel()
{
setlayout(new borderlayout());
result=0;
lastcommand="=";
start=true;
// add the display
display=new jbutton("0");
display.setenabled(false);
add(display,borderlayout.north);
actionlistener insert=new insertaction();
actionlistener command=new commandaction();
panel=new jpanel();
panel.setlayout(new gridlayout(4,4));
addbutton("7", insert);
addbutton("8", insert);
addbutton("9", insert);
addbutton("/", command);
addbutton("4", insert);
addbutton("5", insert);
addbutton("6", insert);
addbutton("*", command);
addbutton("1", insert);
addbutton("2", insert);
addbutton("3", insert);
addbutton("-", command);
addbutton("0", insert);
addbutton(".", insert);
addbutton("=", command);
addbutton("+", command);
add(panel, borderlayout.center);
}
private void addbutton(string label,actionlistener listener)
{
jbutton button=new jbutton(label);
button.addactionlistener(listener);
panel.add(button);
}
/**
* this action inserts the button action string to the end of the display text.
*/
private class insertaction implements actionlistener
{
public void actionperformed(actionevent event)
{
string input=event.getactioncommand();
if(start)
{
display.settext("");
start=false;
}
display.settext(display.gettext()+input);
}
}
/**
* this action executes the command that the button action string denotes.
*/
private class commandaction implements actionlistener
{
public void actionperformed(actionevent event)
{
string command=event.getactioncommand();
if(start)
{
if (command.equals("-"))
{
display.settext(command);
start = false;
}
else lastcommand = command;
}else {
calculate(double.parsedouble(display.gettext()));
lastcommand=command;
start=true;
}
}
}
/**
* carries out the pending calculation.
* @param x the value to be accumulated with the prior result.
*/
public void calculate(double x)
{
if (lastcommand.equals("+")) result += x;
else if (lastcommand.equals("-")) result -= x;
else if (lastcommand.equals("*")) result *= x;
else if (lastcommand.equals("/")) result /= x;
else if (lastcommand.equals("=")) result = x;
display.settext("" + result);
}
}
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
希望与广大网友互动??
点此进行留言吧!
计算器的程序代码java_java 简单的计算器程序实例代码相关推荐
- 使用VB.NET控制台应用程序实现一个简单的计算器
使用VB.NET控制台应用程序实现一个简单的计算器 工具 VS2019 创建界面 一共使用了2种控件,显示数字的是TextBox,各种按钮是Button. 注意事项 TextBox控件的Multili ...
- 【练习题】构造方法 编写Java程序,模拟简单的计算器。
package day09; /*1.[练习题]构造方法 编写Java程序,模拟简单的计算器. 定义名为Number的类,其中有两个整型数据成员n1和n2,应声明为私有.编写构造方法,赋予n1和n2初 ...
- python计算器教程,用Python程序制作一个简单的计算器
用Python程序制作一个简单的计算器 在此示例中,您将学习创建一个简单的计算器,该计算器可以根据用户的输入进行加,减,乘或除. 要理解此示例,您应该了解以下Python编程主题: 通过函数创建简单计 ...
- python对逻辑回归进行显著性_python sklearn库实现简单逻辑回归的实例代码
Sklearn简介 Scikit-learn(sklearn)是机器学习中常用的第三方模块,对常用的机器学习方法进行了封装,包括回归(Regression).降维(Dimensionality Red ...
- java实现音频播放小程序_微信小程序实现音频文件播放进度的实例代码
问题描述 在微信小程序中经常会用到控制文件播放的滑块,通过滑块可控制音频播放进度,下面即用代码实现. 解决方案 首先用.wxml与 .wmss 代码实现进度条的效果,再通过 .js 文件控制进度条的进 ...
- 简单下拉菜单html,JavaScript简单下拉菜单实例代码
本文实例讲述了JavaScript简单下拉菜单实例代码.分享给大家供大家参考.具体如下: 这是一款JavaScript实现的下拉菜单演示代码,带渐变效果的CSS+jQuery菜单,向下滑出型的菜单,最 ...
- android 今日头条加载动画,Android 仿今日头条简单的刷新效果实例代码
点击按钮,先自动进行下拉刷新,也可以手动刷新,刷新完后,最后就多一行数据.有四个选项卡. 前两天导师要求做一个给本科学生预定机房座位的app,出发点来自这里.做着做着遇到很多问题,都解决了.这个效果感 ...
- 多个 小程序_最简单的小程序制作方法,不会代码也能撸一个
前言 / 小程序从17年上线到现在已经构造了新的开发环境和开发者生态,现在已经有超过150万的开发者加入到开发,小程序应用数量超过100万,覆盖200多个行业.虽然开发难度较app减少了很多,但是对于 ...
- java 生成token代码_java token生成和校验的实例代码
现在越来越多的登录方式都用到了token作为用户登录令牌,所以实现了一个token生成和校验案例. 缺点:该实现方式token是存储在内存中,不适合分布式项目,如需改为分布式项目部署,可把token存 ...
最新文章
- 对已有文件进行既读又写的操作时关于文件位置注意事项(适用于Python和C/C++)
- ztree 获取当前选中节点的子节点集合
- [Leedcode][JAVA][第983题][最低票价][动态规划]
- SpringMVC之源码分析--ThemeResolver(三)
- addr2line -f -e *.so 0x9d69
- 如何在Mac中使用预览应用合并PDF文件,Mac预览应用合并PDF文件?
- 剧情系统实战,我们要做一个什么样的剧情系统
- Constructing Narrative Event Evolutionary Graph for Script Event Prediction
- 大饼趋势逐渐明朗,黎明就在眼前!
- 用计算机打字用英语怎么说,打字用英语怎么说
- LaTex(PART IV) 各级标题
- 今日小程序推荐:动态壁纸-你专属壁纸!
- Android 音视频开发之基础篇 使用 imageview绘制一张图片
- CST2019电磁工作室的简单使用
- iOS开发 - 二维码的生成与读取
- 人工神经网络(ANN/NN)、感知机(PLA)
- Spring Cloud学习笔记—网关Spring Cloud Gateway官网教程实操练习
- /Zc:strictStrings配置
- 解决:‘vue-cli-service‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件
- 北京地铁站经纬度集合(包含大部分)
热门文章
- BZOJ 3930 [CQOI2015]选数
- android 官方DrawerLayout的介绍和使用
- mysql修改默认编码为UTF8
- Linux重启命令reboot
- php项目打开快捷方式,克隆一个新项目的快捷方式_PHP教程
- 【Python学习系列十七】基于scikit-learn库逻辑回归训练模型(delta比赛代码2)
- 离线轻量级大数据平台Spark之MLib机器学习库线性回归实例
- Leetcode 392. 判断子序列 解题思路及C++实现
- Android中Activity总结
- 无法安装.msi文件