java 计算器 小程序_java 学习 ——计算器小程序
简易计算器小程序代码:
package jisuanqi;
//声明须要插入的包
import java.awt.*;
import java.lang.Object;
import java.lang.String;
import javax.swing.*;
import java.awt.event.*;
import java.awt.TextComponent;
//声明一个主类jisuanqi。继续窗体类Frame
public class jisuanqi extends Frame{
//声明16个Button
Button anjian1, anjian2, anjian3, anjian4, anjian5, anjian6, anjian7, anjian8, anjian9, anjian10, anjian11, anjian12, anjian13, anjian14,anjian15,anjian16;
//声明文本框。用于接收数字和计算
TextField numText;
//声明面板容器,用于存放各种button
Panel anjianPanel;
//构造方法初始化button
jisuanqi(String title){
super(title);
anjian1=new Button("0");
anjian2=new Button("1");
anjian3=new Button("2");
anjian4=new Button("3");
anjian5=new Button("4");
anjian6=new Button("5");
anjian7=new Button("6");
anjian8=new Button("7");
anjian9=new Button("8");
anjian10=new Button("9");
anjian11=new Button("+");
anjian12=new Button("-");
anjian13=new Button("*");
anjian14=new Button("/");
anjian15=new Button("=");
anjian16=new Button("清空");
//初始化文本框。将文本的值设置为“0”
numText=new TextField("0");
//实例化面板;
anjianPanel=new Panel();
//设置button
anjianPanel.setLayout(new FlowLayout());
//实例化button
anjian1.addActionListener(new anjianAction());
anjian2.addActionListener(new anjianAction());
anjian3.addActionListener(new anjianAction());
anjian4.addActionListener(new anjianAction());
anjian5.addActionListener(new anjianAction());
anjian6.addActionListener(new anjianAction());
anjian7.addActionListener(new anjianAction());
anjian8.addActionListener(new anjianAction());
anjian9.addActionListener(new anjianAction());
anjian10.addActionListener(new anjianAction());
anjian11.addActionListener(new anjianAction());
anjian12.addActionListener(new anjianAction());
anjian13.addActionListener(new anjianAction());
anjian14.addActionListener(new anjianAction());
anjian15.addActionListener(new anjianAction());
anjian16.addActionListener(new anjianAction());
//将各个button加入到面板容器中
anjianPanel.add(anjian1);
anjianPanel.add(anjian2);
anjianPanel.add(anjian3);
anjianPanel.add(anjian4);
anjianPanel.add(anjian5);
anjianPanel.add(anjian6);
anjianPanel.add(anjian7);
anjianPanel.add(anjian8);
anjianPanel.add(anjian9);
anjianPanel.add(anjian10);
anjianPanel.add(anjian11);
anjianPanel.add(anjian12);
anjianPanel.add(anjian13);
anjianPanel.add(anjian14);
anjianPanel.add(anjian15);
anjianPanel.add(anjian16);
//为文本框加入事件
numText.addTextListener(new TextListener() {
public void textValueChanged(TextEvent e) {
if(numText.getText().indexOf("0",0)!=-1){
numText.getText().replace("0","");
}
}
});
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
//将文本框放置在顶部
add(numText,BorderLayout.NORTH);
//加入button
add(anjianPanel,BorderLayout.CENTER);
//设置文本框属性
numText.setEditable(false);
}
//没有不论什么操作的值
int num=0;
//numStr是文本框的值
String numStr=null;
Boolean chinage=false;
//设置button
public int check(){
numStr = numText.getText();
if (numStr.indexOf("+") == 0) {
numStr = numStr.replace('+', '0');
num = num + Integer.parseInt(numStr);
return num;
}
else if (numStr.indexOf("-") != -1) {
numStr = numStr.replace("-", "0");
num = num - Integer.parseInt(numStr);
return num;
}
else if(numStr.indexOf("*")!=-1){
numStr=numStr.replace('*','0');
num = num * Integer.parseInt(numStr);
return num;
}
else if(numStr.indexOf("/")!=-1){
numStr=numStr.replace('/','0');
try{
num = num / Integer.parseInt(numStr);
return num;
}
catch(ArithmeticException e){
JOptionPane.showMessageDialog(null,"除数不能为空!","消息!",1);
return num;
}
}
else return num=Integer.parseInt(numStr);
}
//创建事件
private class anjianAction implements ActionListener{
public void actionPerformed(ActionEvent event){
if(event.getActionCommand()=="0"){
if(!numText.getText().equals("0"))
numText.setText(numText.getText()+0);
}
if(event.getActionCommand()=="1")
numText.setText(numText.getText()+1);
if(event.getActionCommand()=="2")
numText.setText(numText.getText()+2);
if(event.getActionCommand()=="3")
numText.setText(numText.getText()+3);
if(event.getActionCommand()=="4")
numText.setText(numText.getText()+4);
if(event.getActionCommand()=="5")
numText.setText(numText.getText()+5);
if(event.getActionCommand()=="6")
numText.setText(numText.getText()+6);
if(event.getActionCommand()=="7")
numText.setText(numText.getText()+7);
if(event.getActionCommand()=="8")
numText.setText(numText.getText()+8);
if(event.getActionCommand()=="9")
numText.setText(numText.getText()+9);
if(event.getActionCommand()=="清空"){
numText.setText("0");
num=0;
}
if(event.getActionCommand()=="+"){
//调用check();方法
check();
numText.setText("+");
}
if(event.getActionCommand()=="-"){
check();
numText.setText("-");
}
if(event.getActionCommand()=="*"){
check();
numText.setText("*");
}
if(event.getActionCommand()=="/"){
if(numStr=="/0"){
JOptionPane.showMessageDialog(null,"除数不能为空!","消息!",1);
}
check();
numText.setText("/");
}
if(event.getActionCommand()=="="){
check();
numText.setText(""+num);
}
}
}
public static void main(String[] args){
jisuanqi jisuanqi=new jisuanqi("计算器");
jisuanqi.setBackground(Color.CYAN);
jisuanqi.setSize(300,280);
//设置窗体大小
jisuanqi.setLocation(550,350);
//设置界面属性
jisuanqi.setVisible(true);
}
}
java 计算器 小程序_java 学习 ——计算器小程序相关推荐
- java体重指数计算器程序_java 学习 ——计算器小程序
简易计算器小程序代码: package jisuanqi; //声明需要插入的包 import java.awt.*; import java.lang.Object; import java.lan ...
- 一个C#程序员学习微信小程序的笔记
一个C#程序员学习微信小程序的笔记 客户端打开小程序的时候,就将代码包下载到本地进行解析,首先找到了根目录的 app.json ,知道了小程序的所有页面. 在这个Index页面就是我们的首页,客户端在 ...
- java手机调查问卷_JAVA学习调查问卷——20145101
1.你对自己的未来有什么规划?做了哪些准备? 我希望在未来不管自己是否从事机要工作,都要做一个有能力,对社会能有所贡献的人.所以在现阶段我应该努力学习基础知识,夯实基本功,具备成为合格机要人的素质. ...
- java怎么实现购物车_java实现网上购物车程序
导读热词 用java代码写一个简单的网上购物车程序,供大家参考,具体内容如下 需求: 1.写一个商品类,有商品编号.商品名称.商品分类.商品单价属性. 2.写一个商品条目信息类,有商品和数量两个属性, ...
- java语言提供结构_java学习之语句结构
在java语言当中存在4中语句结构,分别是: 1.顺序结构 2.判断结构 3.选择结构 4.循环结构 一.顺序结构: 所谓的顺序结构,也就是当不指定其他三种语句结构的情况下,语句是从上往下依次执行的, ...
- java基础代码实例_java学习之web基础(3):Servlet 和 Request的登录处理实例
在页面输入用户名和密码,进行权限判断. 登录成功跳转到SuccessServlet展示:登录成功!用户名,欢迎您: 登录失败跳转到FailServlet展示:登录失败,用户名或密码错误. 我们这里使用 ...
- java的反射技术_Java学习——反射技术
1. 反射机制介绍_Class对象获取 (1) 什么是(Reflection)反射?其它语言有这种特点吗? 答:动态语言:在程序运行时,可以改变程序的结构或变量的类型.典型的动态语言"Pyt ...
- java抽奖程序_java模拟一个抽奖程序
今天用一个程序模拟一个从1-32之间,随机抽取7组号码的抽奖程序 * 需要使用Java的图形界面知识 * 窗口 JFrame * 面板 JPanel * 显示文本信息的标签 JLabel * 文 ...
- java的图形用户界面_Java学习之GUI(图形用户界面)
一.GUI 概述 1.概述: 1.GUI:Graphical User Interface,即图形用户界面,用于计算机与用户交互的一种方式 2.计算机与用户交互的形式:GUI和CLI GUI: Gra ...
最新文章
- 星际2虫王iA加入商汤,担任AI研究员,网友:iA vs AI ,是自己训练跟自己打吗?...
- 计算机网络多媒体图像矢量图,13多媒体信息处理——图像处理(一)
- 禁用FCKeditor浏览服务器
- windows睡眠(休眠)唤醒助手_解决电脑在睡眠/休眠状态下无故被唤醒的情况
- python之moviepy库的安装与使用
- mysql权限说法正确的是,【多选题】下面关于修改 MySQL 配置的说法中,正确的是...
- java mvc 菜鸟_【java框架】SpringMVC(1)--SpringMVC入门
- 机器学习的挑战:黑盒模型正面临这3个问题
- 学音视频一定要掌握这几个算法
- 排队 (白雪公主与n个小矮人)
- 大二下:概率论与数理统计复习 期末试题A
- 重心法例题matlab,重心法--例子.ppt
- ROG手机张舜翔:把游戏体验感当成游戏手机的重要支柱
- Webpack:Loader学习—— Pitching Loader
- lcx端口转发工具的使用
- matlab 函数,matlab 语法1
- WXS脚本之WXS语法
- linux使用spotify/kafka 镜像docker部署 Kafka
- HSDPA建网及商用策略(转)
- 京东抢券Python脚本
热门文章
- unityShader-广告牌效果(画面永远朝向摄像机)
- DAI:Digital Audio Interfaces(音频设备的硬件接口)
- 关于深圳软众科技有限公司严正声明
- Windows10 wifi连接但不能上网的解决办法
- 江苏农牧科技职业学院计算机应用技术,江苏农牧科技职业学院2021年招生计划...
- input输入框限制只能输入数字的方法
- 有没有想过,我们成为“模拟人生”中的一部分?
- 谷歌浏览器登录不上 sarai浏览器可以登录的问题
- mac电池最大充电限制工具:AlDente mac中文免费版
- 聊聊如何做好设计师管理