导航:首页 > 编程语言 > 计算器java小程序

计算器java小程序

发布时间:2025-08-24 04:56:22

java计算器小程序

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.lang.*;
import javax.swing.*;
import java.util.*;

public class CalculatorA {
private JFrame jf;
private JButton[] jbs;
private JTextField jtf;
private JButton clear;
private double num1,num2,jieguo;
private char c;
/**
* 构造方法实例化属性
*
*/
public CalculatorA(){
jf=new JFrame("我的计算器v1.0");
jtf=new JTextField(20);
clear=new JButton("clear");
jbs=new JButton[16];
String str="123+456-789*0./=";
for(int i=0; i<str.length(); i++){
jbs[i]=new JButton(str.charAt(i)+"");
}
init();
addEventHandler();
// setFont();
// setColor();
showMe();
}

/**
* 布局图形界面
*
*/
public void init(){
// jf.setLayout(manager)
JPanel jp1=new JPanel();
jp1.add(jtf);

JPanel jp2=new JPanel();
jp2.setLayout(new GridLayout(4,4));
for(int i=0; i<16; i++){
jp2.add(jbs[i]);
}
JPanel jp3=new JPanel();
jp3.add(clear);
jf.add(jp1,BorderLayout.NORTH);
jf.add(jp2,BorderLayout.CENTER);
jf.add(jp3,BorderLayout.SOUTH);
}

public void setFont(){

}

public void setColor(){

}
public void addEventHandler(){
ActionListener lis=new ActionListener(){

public void actionPerformed(ActionEvent e){
// TODO Auto-generated method stub
JButton jb=(JButton)e.getSource();
// String key=(String)e.getActionCommand();
String str =jb.getText().trim();//把字符串的首尾空格去掉!
// String str2=e.getActionCommand().trim();//返回事件源的文本内容
if("0123456789.".indexOf(str)!=-1){//如果是数字或点号
jtf.setText(jtf.getText()+str);
return;
}
if("+-*/".indexOf(str)!=-1){
num1=Double.parseDouble(jtf.getText());

jtf.setText("");
c=str.charAt(0);
jtf.setText("");
return ;
}
if(str.equals("=")){
num2=Double.parseDouble(jtf.getText());
// jtf.setText("");
switch(c){
case '+': jieguo=num1+num2;break;
case '-': jieguo=num1-num2;break;
case '*': jieguo=num1*num2; break;
case '/': jieguo=num1/num2;break;
}
jtf.setText(Double.toString(jieguo));
return;
}

if(e.getActionCommand().equals("clear")){

jtf.setText("");
return;
}
}
};
for(int i=0; i<jbs.length; i++){

jbs[i].addActionListener(lis);
}
clear.addActionListener(lis);
}

public void showMe(){
jf.pack();
jf.setVisible(true);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}
public static void main(String[] args){
new CalculatorA();

}
}

㈡ 求java编写的租金计算器小程序

importjava.awt.Container;
importjava.awt.GridLayout;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjava.awt.event.FocusAdapter;
importjava.awt.event.FocusEvent;
importjava.sql.Date;
importjava.util.Calendar;

importjavax.swing.JButton;
importjavax.swing.JFrame;
importjavax.swing.JLabel;
importjavax.swing.JTextField;

publicclassZuJinextendsJFrame{
/**
*(结束日期-开始日期)÷30×月租金+业务费用+其他费用=总费用
〔(结束日期-开始日期)÷30×月租金+业务费用+其他费用〕÷合租人员=平均费用
需要弹出一个租金计算器对话框分为租金计算信息与租金计算结果两部分

*/
publicZuJin(){
Containerc=getContentPane();
c.setLayout(newGridLayout(5,4));
JLabelj1=newJLabel("开始日期");
c.add(j1);
JTextFieldjt1=newJTextField(10);
c.add(jt1);
JLabelj2=newJLabel("结束日期");
c.add(j2);
JTextFieldjt2=newJTextField("");
c.add(jt2);
JLabelj3=newJLabel("月租金(元)");
c.add(j3);
JTextFieldjt3=newJTextField(5);
c.add(jt3);
JLabelj4=newJLabel("业务费(元)");
c.add(j4);
JTextFieldjt4=newJTextField(5);
c.add(jt4);
JLabelj5=newJLabel("其他费用(元)");
c.add(j5);
JTextFieldjt5=newJTextField(5);
c.add(jt5);
JLabelj6=newJLabel("合租人员数量");
c.add(j6);
JTextFieldjt6=newJTextField(3);
c.add(jt6);
JLabelj7=newJLabel("总费用(元)");
c.add(j7);
JTextFieldjt7=newJTextField(5);
jt7.setEditable(false);
c.add(jt7);
JLabelj8=newJLabel("平均费用(元)");
c.add(j8);
JTextFieldjt8=newJTextField(5);
jt8.setEditable(false);
c.add(jt8);
JButtonjb1=newJButton("计算");
c.add(jb1);
jt1.addFocusListener(newFocusAdapter()
{
@Override
publicvoidfocusGained(FocusEvente)
{
if(jt1.getText().equals("格式为:0000-00-00")){
jt1.setText("");
}

}

@Override
publicvoidfocusLost(FocusEvente)
{
if(jt1.getText().equals("")){
jt1.setText("格式为:0000-00-00");
}

}

});
jt2.addFocusListener(newFocusAdapter()
{
@Override
publicvoidfocusGained(FocusEvente)
{
if(jt2.getText().equals("格式为:0000-00-00")){
jt2.setText("");
}

}

@Override
publicvoidfocusLost(FocusEvente)
{
if(jt2.getText().equals("")){
jt2.setText("格式为:0000-00-00");
}

}

});
jb1.addActionListener(newActionListener(){

@Override
publicvoidactionPerformed(ActionEventarg0){
//TODOAuto-generatedmethodstub
Dated1=Date.valueOf(jt1.getText());//开始日期
Dated2=Date.valueOf(jt2.getText());//结束日期
Calendarc1=Calendar.getInstance();
c1.setTime(d1);
Calendarc2=Calendar.getInstance();
c2.setTime(d2);
intday1=c1.get(Calendar.DAY_OF_YEAR);
intday2=c2.get(Calendar.DAY_OF_YEAR);
intdays=day2-day1;
doublemoney1=Double.valueOf(jt3.getText());//月租金
doublemoney2=Double.valueOf(jt4.getText());//业务费
doublemoney3=Double.valueOf(jt5.getText());//其他费用
intman=Integer.valueOf(jt6.getText());//人数
doublemoney4=days/30*money1+money2+money3;
doublemoney5=0.0;
if(man!=0){
money5=money4/man;
}
else{
money5=money4;
}

jt7.setText(String.valueOf(money4));
jt8.setText(String.valueOf(money5));

}
});

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(400,400,500,300);
setVisible(true);
setTitle("租金计算器");

}
publicstaticvoidmain(String[]args){
ZuJinzj=newZuJin();

}
}

丑是丑了点 用还是可以用的。

阅读全文

与计算器java小程序相关的资料

热点内容
linux火狐浏览器安装 浏览:68
java子类重写 浏览:815
压缩袋太大装不进柜子怎么办 浏览:837
程序员简历里的职业 浏览:108
现在哪个app可以听付费歌曲 浏览:967
vivo的添加文件夹 浏览:349
ubuntu压缩zip 浏览:4
vigenere算法的方法是什么 浏览:668
pdf保护破解 浏览:343
仿微信聊天系统源码广州公司 浏览:106
怎么查看我的世界服务器日志 浏览:430
怎么从程序员走到成功 浏览:824
把软件放入文件夹中如何移出 浏览:209
红包源码企业即时聊天软件 浏览:581
xp安装python 浏览:10
西门子参数编程读取半径值 浏览:403
洗首饰解压小视频 浏览:966
01背包问题的算法解决 浏览:373
sd卡放哪个文件夹 浏览:301
解释器模式java 浏览:104