- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章java实现简单的计算器类实例由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
本文实例讲述了java实现简单的计算器类。分享给大家供大家参考。具体如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
|
package
chap;
import
java.awt.BorderLayout;
import
java.awt.Color;
import
java.awt.FlowLayout;
import
java.awt.GridLayout;
import
java.awt.event.ActionEvent;
import
java.awt.event.ActionListener;
import
java.text.DecimalFormat;
import
javax.swing.JButton;
import
javax.swing.JFrame;
import
javax.swing.JPanel;
import
javax.swing.JTextField;
public
class
Calculator {
private
JFrame frame;
private
JPanel panel,panelKeys,panelKeys_up,panelKeys_down;
private
JTextField textComputer;
//计算区域
private
JButton buttonBk,buttonC;
//退格键和清零键
private
JButton button[];
//数字键组
private
JButton buttonDot,buttonAddSub,buttonAdd,buttonSub,buttonMul,buttonDiv,button1,button2,button3,buttonEqual;
private
double
result;
//计算结果
private
final
short
ADD =
1
;
private
final
short
SUB =
2
;
private
final
short
MUL =
3
;
private
final
short
DIV =
4
;
private
short
operator = -
1
;
//运算符
public
Calculator(){
frame =
new
JFrame(
"计算机"
);
frame.setSize(
400
,
250
);
panel =
new
JPanel();
//全局面板
panel.setVisible(
true
);
frame.setVisible(
true
);
frame.getContentPane().add(panel);
ActionListener listener =
new
ComputerActionListener();
//按键监听器
//计算区
textComputer =
new
JTextField(
15
);
textComputer.setText(
""
);
textComputer.setEditable(
false
);
textComputer.setBackground(
new
Color(
255
,
255
,
255
));
//功能键上半部分
panelKeys_up =
new
JPanel();
panelKeys_up.setLayout(
new
FlowLayout(FlowLayout.RIGHT));
buttonBk =
new
JButton(
"Backspace"
);
buttonBk.setForeground(
new
Color(
255
,
0
,
0
));
buttonC =
new
JButton(
"C"
);
buttonC.setForeground(
new
Color(
255
,
0
,
0
));
buttonBk.addActionListener(listener);
buttonC.addActionListener(listener);
panelKeys_up.add(buttonBk);
panelKeys_up.add(buttonC);
//功能键下半部分
panelKeys_down =
new
JPanel();
panelKeys_down.setLayout(
new
GridLayout(
4
,
5
));
button =
new
JButton[
10
];
for
(
int
i =
0
;i < button.length;i++){
button[i] =
new
JButton(Integer.toString(i));
button[i].setForeground(
new
Color(
255
,
0
,
0
));
}
buttonAddSub =
new
JButton(
"+/-"
);
buttonAddSub.setForeground(
new
Color(
255
,
0
,
0
));
buttonAdd =
new
JButton(
"+"
);
buttonAdd.setForeground(
new
Color(
255
,
0
,
0
));
buttonSub =
new
JButton(
"-"
);
buttonSub.setForeground(
new
Color(
255
,
0
,
0
));
buttonMul =
new
JButton(
"*"
);
buttonMul.setForeground(
new
Color(
255
,
0
,
0
));
buttonDiv =
new
JButton(
"/"
);
buttonDiv.setForeground(
new
Color(
255
,
0
,
0
));
button1 =
new
JButton();
button2 =
new
JButton();
button3 =
new
JButton();
button1.setForeground(
new
Color(
255
,
0
,
0
));
button2.setForeground(
new
Color(
255
,
0
,
0
));
button3.setForeground(
new
Color(
255
,
0
,
0
));
buttonEqual =
new
JButton(
"="
);
buttonEqual.setForeground(
new
Color(
255
,
0
,
0
));
buttonAddSub.addActionListener(listener);
buttonAdd.addActionListener(listener);
buttonSub.addActionListener(listener);
buttonMul.addActionListener(listener);
buttonDiv.addActionListener(listener);
buttonEqual.addActionListener(listener);
for
(
int
i =
0
; i <=
9
; i++){
button[i].addActionListener(listener);
}
for
(
int
i =
0
; i <=
9
; i++){
panelKeys_down.add(button[i]);
}
panelKeys_down.add(buttonAddSub);
panelKeys_down.add(buttonAdd);
panelKeys_down.add(buttonSub);
panelKeys_down.add(buttonMul);
panelKeys_down.add(buttonDiv);
panelKeys_down.add(buttonEqual);
panel.setLayout(
new
BorderLayout());
panel.add(textComputer,BorderLayout.NORTH);
panel.add(panelKeys_up,BorderLayout.CENTER);
panel.add(panelKeys_down,BorderLayout.SOUTH);
}
class
ComputerActionListener
implements
ActionListener{
@Override
public
void
actionPerformed(ActionEvent event) {
// TODO Auto-generated method stub
Object keyButton = event.getSource();
String text = textComputer.getText();
DecimalFormat df =
new
DecimalFormat(
"0.###########"
);
//Backspace
if
(keyButton == buttonBk && text.length() >
0
){
textComputer.setText(text.substring(
0
,text.length()-
1
));
}
//C键
if
(keyButton == buttonC){
result =
0
;
textComputer.setText(
""
);
}
//数字键
for
(
int
i=
0
;i<
10
;i++){
if
(keyButton == button[i]){
textComputer.setText(text+i);
}
}
if
(keyButton == buttonAdd){
operator =
1
;
}
if
(keyButton == buttonSub){
operator =
2
;
}
if
(keyButton == buttonMul){
operator =
3
;
}
if
(keyButton == buttonDiv){
operator =
4
;
}
//符号键
if
(keyButton == buttonAdd || keyButton == buttonSub || keyButton == buttonMul || keyButton == buttonDiv || keyButton == buttonEqual){
switch
(operator){
case
ADD:
result += Double.parseDouble(text);
break
;
case
SUB:
result -=Double.parseDouble(text);
break
;
case
MUL:
result *=Double.parseDouble(text);
break
;
case
DIV:
result /=Double.parseDouble(text);
break
;
default
:
result = Double.parseDouble(text);
}
textComputer.setText(
""
);
}
if
(keyButton == buttonEqual){
textComputer.setText(String.valueOf(result));
}
}
}
public
static
void
main(String args[]){
new
Calculator();
}
}
|
希望本文所述对大家的java程序设计有所帮助.
最后此篇关于java实现简单的计算器类实例的文章就讲到这里了,如果你想了解更多关于java实现简单的计算器类实例的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我目前正在尝试使用 ParaView Calculator-Filter 将给定的笛卡尔坐标 (x,y,z) 转换为球坐标 (r, theta, phi),其中 theta 是极角,phi 是方位角。
已关闭。这个问题是 not reproducible or was caused by typos 。目前不接受答案。 这个问题是由拼写错误或无法再重现的问题引起的。虽然类似的问题可能是 on-top
我有这个问题,我想显示如果0/0,输出是:“不能将0除以自身”。如何调整我的代码以便可以显示该输出?如果是这样,我应该使用什么代码才能实现我的目标? 下面是我的代码: #include using
我正在尝试创建一个也支持负数的计算器,并最终创建一个 lisp 风格的树。 我像这样定义词法分析器规则: INT :'-'? [0-9]+ ; LBRACKET : '('; RBRACKET :
我正在开发一个基本的 JavaScript 计算器,我也希望能够开始计算负数。现在,如果我在输入数字之前单击“-”,“-”将不会显示,因此我只能从正数开始。有人可以告诉我如何将其包含在我的代码中吗?
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
这是我第一次尝试 Java。该项目是一个计算器,它需要一个数字、一个运算符(operator)信号(+、-、*、/)和另一个数字来创建方程并给出其最终值,然后询问用户是否要重新启动程序另一个方程或不是
所以我写了这个脚本;它有点像我找到并拼凑起来的计算器的大杂烩。 KeyListener 来自 Java - oracle - .com 网站。顺便说一句,我对此非常陌生,不知道我在做什么。 我正在尝试
我正在尝试创建一个也支持负数的计算器,并最终创建一个 lisp 风格的树。 我像这样定义词法分析器规则: INT :'-'? [0-9]+ ; LBRACKET : '('; RBRACKET :
我正在开发一个基本的 JavaScript 计算器,我也希望能够开始计算负数。现在,如果我在输入数字之前单击“-”,“-”将不会显示,因此我只能从正数开始。有人可以告诉我如何将其包含在我的代码中吗?
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
我开始在java中创建一个计算器,我试图循环遍历字符串输入,如果输入中有任何整数,则将它们添加到ArrayList calcOperands中。在 parseInput() 方法中,我使用 charA
我正忙着制作计算器,但不知怎的,整数没有被使用,我不知道为什么。我尝试修复它,但我不知道该怎么做。我使用带有事件的按钮来计算答案,也许有问题。这是我的代码:顺便说一句,我使用 Eclipse
我的主类中有这段代码。我的问题是,GPA 是用总分除以类(class)来计算的。它没有给我完整的号码。 EX,如果总数为 14,类(class)为 4,则为 3.5,我的代码只给我 3.0。有谁知道为
我需要创建一个可以加、减、乘、除、绝对值和舍入的计算器。这是我到目前为止所拥有的 import java.util.Scanner; public class Calculator { pub
我是一名 Java Noob,正在研究 GUI 计算器,但我刚刚来到这里..我已经有了按钮,我需要绑定(bind)这些数字并存储在运算符 ( + - */) 之间的某个位置以显示在我的 JTextAr
这是我的作业。但是,我无法让结果发挥作用。我希望它打印出来为: > 2*7*6 2 * 7 ---- 14 * 6 ---- 84 等等。我希望无论我输入多少个数字,代码都能正常工作
这个问题已经有答案了: What does a "Cannot find symbol" or "Cannot resolve symbol" error mean? (18 个回答) 已关闭 6 年
大家好,感谢您帮助我。 我用 C# 制作了这个计算器,但遇到了一个问题。 当我添加像 5+5+5 这样的东西时,它给了我正确的结果,但是当我想减去两个以上的数字并且还想除或乘以两个以上的数字时,我没有
我一直在开发计算器作为自己的学习项目。它工作正常,只是我无法弄清楚如何阻止人们添加应用程序破坏输入,例如 1++-*/4。我尝试了各种方法,例如将当前显示拆分为一个数组,并将其与具有所有运算符的另一个
我是一名优秀的程序员,十分优秀!