JAVA编写的简单计算器

package com.hellojava.practice.test;

import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.Panel;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class Numerator<textFiled> extends JFrame implements ActionListener{
	JFrame frame=new JFrame();
	TextField textField;
	private String op1="0";
	private boolean append=false;
	private String operator="+";
	public  Numerator(){
		frame.setTitle("简单计算器");
		frame.setLayout(new BorderLayout());
		frame.setLocationRelativeTo(null);
		textField=new TextField();

		Panel panel1=new Panel();
		panel1.setLayout(new BorderLayout());
		panel1.add(textField, BorderLayout.NORTH);
		frame.add(panel1, BorderLayout.NORTH);

		JButton btn0=new JButton("0");
		btn0.addActionListener(this);
		JButton btn1=new JButton("1");
		btn1.addActionListener(this);
		JButton btn2=new JButton("2");
		btn2.addActionListener(this);
		JButton btn3=new JButton("3");
		btn3.addActionListener(this);
		JButton btn4=new JButton("4");
		btn4.addActionListener(this);
		JButton btn5=new JButton("5");
		btn5.addActionListener(this);
		JButton btn6=new JButton("6");
		btn6.addActionListener(this);
		JButton btn7=new JButton("7");
		btn7.addActionListener(this);
		JButton btn9=new JButton("9");
		btn9.addActionListener(this);
		JButton btn8=new JButton("8");
		btn8.addActionListener(this);
		JButton btna=new JButton("+");
		btna.addActionListener(this);
		JButton btnb=new JButton("-");
		btnb.addActionListener(this);
		JButton btnc=new JButton("*");
		btnc.addActionListener(this);
		JButton btnd=new JButton("/");
		btnd.addActionListener(this);
		JButton btne=new JButton("=");
		btne.addActionListener(this);
		JPanel panel2=new JPanel();
		panel2.setLayout(new GridLayout(4, 4));
		panel2.add(btn0);
		panel2.add(btn1);
		panel2.add(btn2);
		panel2.add(btn3);
		panel2.add(btn4);
		panel2.add(btn5);
		panel2.add(btn6);
		panel2.add(btn7);
		panel2.add(btn8);
		panel2.add(btn9);
		panel2.add(btna);
		panel2.add(btnb);
		frame.add(panel2,BorderLayout.CENTER);

		JPanel panel3=new JPanel();
		panel3.add(btnc);
		panel3.add(btnd);
		panel3.add(btne);
		panel3.setLayout(new GridLayout(1, 3));
		frame.add(panel3, BorderLayout.SOUTH);
		frame.pack();
		frame.setVisible(true);
	}
	public static void main(String[] args) {
		new Numerator();
	}
	@Override
	public void actionPerformed(ActionEvent e) {
		String comm=e.getActionCommand();
		if("0123456789".indexOf(comm)!=-1){
			if(append){
				String temp=textField.getText();
				textField.setText(temp+comm);
			}else{
				textField.setText(comm);
				append=true;
			}
		}
		else if("+-*/".indexOf(comm)!=-1){
			op1=textField.getText();
			textField.setText(comm);
			operator=comm;
			append=false;
		}
		else if("=".equals(comm)){
			String op2=textField.getText();
			double d1=Double.parseDouble(op1);
			double d2=Double.parseDouble(op2);
			if(operator.equals("+")){
				d1=d1+d2;
			}else if(operator.equals("-")){
				d1=d1-d2;
			}else if(operator.equals("*")){
				d1=d1*d2;
			}else{
				d1=d1/d2;
			}
			String d3=d1+"";
			textField.setText(d3);
			append=false;
		}
		else if(".".equals(comm)){
			String temp=textField.getText();
			if(temp.indexOf(".")==-1){
				textField.setText(temp+".");
				append=true;
			}
		}
	}
}
时间: 2024-12-26 21:39:17

JAVA编写的简单计算器的相关文章

《java小应用程序(Applet)和java应用程序(Application)分别编写的简单计算器》

Application和Java Applet的区别.Java语言是一种半编译半解释的语言.Java的用户程序分为两类:Java Application和Java Applet.这两类程序在组成结构和执行机制上都有一定的差异,主要体现在以下几方面:(1)运行方式不同.Java Application是完整的程序,可以独立运行:Java Applet程序不能单独运行, 它必须嵌入到用HTML语言编写的Web页面中,通过与Java兼容的浏览器来控制执行.(2)运行工具不同.Java Applicat

java面向对象编写的简单计算器

package com.gg.test; import java.util.Scanner; public class figure { public static void main(String[] args) { Math math=new Math(); @SuppressWarnings("resource") Scanner scanner =new Scanner(System.in); System.out.println("请输入第一个数!!!:\n&quo

JAVA学习之简单计算器——V1.0

今天简单的尝试了下java编程,写了一个简短的只包含+,-,*,/,的计算器.今天,对该计算器进行一个简单的总结. 首先计算器分为输入,计算,输出3个环节,首先来介绍下输入环节. 输入: 我们需要从键盘上敲击2个需要计算的数字,以及一个运算的运算符.暂时将计算的数字定为整型int.在这里我用的输入类是Scanner类(据了解这个类比BufferedReader更好).通过Scanner类创建一个对象sc.然后通过调用该对象的方法sc.nextInt()输入整型数据,sc.next()输入字符串数

如何用Java编写一个简单的服务器和客户机

今天我要向大家介绍的是自己编写的一个比较简单的服务器和客户机程序,注意一下哦,比较简单.好了,闲话休提,砸门直入主题. 小编先从客户机和服务器的模型开始讲解.简单来说,我们实现的这种模型呢,我们每一个用户称为一个客户机,用户之间的通信之间需要一个中转,所有客户机的通信都依托于这个中转,很明显,这个中转,就是砸门的服务器了.整个模型比较简单明了,那么,接下来我们就直接进入实现阶段. 我们从实现服务器开始.Java提供了这样的一个类,ServerSocket.我们通过实例化它的方式来创建一个服务器.

用javascript编写的简单计算器

老师布置的任务,弄了一天,总算把代码搞出来了,作为菜鸟给自己一点小掌声,传说中JS是很简单的,但是要写出一个程序真的很需要锻炼,我的锻炼实在是太少了,天天DOTA中.呵呵(做了些小注释)大家应该能看懂吧(没注释的程序我不喜欢) 希望看过的人给点建议.另外eval_r改为eval,共4处(不知道为什么保存后会出现这种情况) <html><head><title>网页计算器byWillikan</title>  <meta name="Willi

Python编写一个简单计算器

一个计算器最主要的功能是加减乘除,那么用 Python 可以怎样实现呢 #!/usr/bin/env python # -*- coding:utf-8 -*- # @Time : 2018/1/22 22:29 # @Author : zhouyuyao # @File : daemonCalculator.py # PyCharm 2017.3.2 (Community Edition) # Build #PC-173.4127.16, built on December 19, 2017

[Java.web]简单计算器

项目的  WebRoot 目录下的 calculator.jsp <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML> <html> <head> <title>计算结果</title> </head> <body> <jsp:us

简单计算器 java实现hdu1237

简单计算器 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 15190    Accepted Submission(s): 5184 Problem Description 读入一个只包含 +, -, *, / 的非负整数计算表达式,计算该表达式的值. Input 测试输入包含若干测试用例,每个测试用例占一行,每行不超过200个字符,

java设计之简单的JAVA计算器

做这个东西主要是为了练习一下以前学习过的java Swing,所以那些复杂的算法就没有加载到里面去........ 先展示一下效果....,额,当然不是这个样子....   ---> 代码: 1 package dialog_color; 2 3 import java.awt.BorderLayout; 4 import java.awt.Color; 5 import java.awt.Container; 6 import java.awt.FlowLayout; 7 import jav