我想用java编一个计算器,面向对象编程

用计算器时,一般先要输入一个数,然后选择一个法则的键,然后再输入一个数,再按等于键。比如2+3=,我不明白如何处理“+”这个事件?算加法要两个数啊,如何处理呢?还有一个问... 用计算器时,一般先要输入一个数,然后选择一个法则的键,然后再输入一个数,再按等于键。比如2+3=,我不明白如何处理“+”这个事件?算加法要两个数啊,如何处理呢?
还有一个问题,我现在学习java三个月,感觉java和c没什么区别,我感觉c导入的是头文件,而java导入的是包,c和java都有main函数,都是程序的入口,只不过java把c中的函数改了一个名字叫类和方法,都是先定义一些变量,然后是一些语句。
书上说面向对象语言与面向过程语言相比,可移植性好,还有封装,继承的优点,我觉得这些都是和类有关的,是不是说,除了类以外,面向对象和面向过程语言没有什么区别呢?

最近提问多,答题少,分不多了,就先给20分吧,希望各位GG,JJ能给我细致解释以上的问题,谢谢了。
展开
 我来答
zs192001
2007-12-07
知道答主
回答量:26
采纳率:0%
帮助的人:0
展开全部
我记得我们学c的时候,书上就有计算器的例子……
我刚学java的时候也带着排斥的心情,觉得没差什么啊
后来发现我错了
java是面向对象,一定要记住这点,好好理解
如何处理“+”,你可以用一个变量记录选择的是什么运算,比如1就代表+,当你点了+的按钮,就改变这个变量的值,当你两个数全部输入好的时候,在处理运算的方法中,通过判断这个变量的值做不同的处理
sayidming
2007-12-10 · TA获得超过1077个赞
知道小有建树答主
回答量:382
采纳率:100%
帮助的人:126万
展开全部
楼上的计算器bug多多啊
除法,小数点等等很多功能做得不全.
楼主要源代码的话,留个邮箱,我发给你.
我刚做了一个很基础的计算器.
我的做法是建一个类,来缓存你输入的数据
class A{
String sss="";
public A(){
}
public void setS(String sss){
this.sss=sss;
}
public String getS(){
return this.sss;
}
然后你可以定义3个对象a,b,c,2+3=
第一个放入2; a.getS(你输入的2数字);
第二个放入+; +号按钮的功能就是赋值给b为"+"
第三个放入3; c.getS(你输入的3数字);
然后在=号的事件处理中,检查第b是否为+号,如果是
就执行
BigDecimal a1 = new BigDecimal(a.getS());

BigDecimal c2 = new BigDecimal(c.getS());
a1+c2就是你要的结果了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
EVAyoung
2007-12-07 · TA获得超过140个赞
知道答主
回答量:77
采纳率:0%
帮助的人:0
展开全部
第一个问题:如何处理“+”这个事件?
为什么你只停留在'+'这个运算符上呢?想想,运算是在哪一步发生的呢?
对了!!是在点击'='时....
(如果只是'2+3='的话,处理是很简单的,如果是'2+3'后再点'+'呢?这时可以引入一个属性来纪录符号,每次点'+','-'等的时候判断符号是否存在,如果存在,则运算[记住,每次进行'='操作后就把符号置空!])
写计算器是很有意思的,你会发现很多问题,甚至是个无底洞..但是,都会有办法解决!!!

第二个问题:面向对象和面向过程语言没有什么区别呢?
你也知道,面向对象有类这个概念.你试想一下,如果把所以的java代码都写在一个类里会是怎样???
移植,封装,继承……这些都是面向对象语言所独有的,你觉得没区别,那只能说明你还不知道这些特性的作用.

一切皆对象. --<<Thinking in java>>
面向对象的思想,要几个月才能熟悉,你该去看看上面这本书了...
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
午夜苦咖啡
2007-12-07 · TA获得超过309个赞
知道小有建树答主
回答量:510
采纳率:0%
帮助的人:0
展开全部
在你的程序里“+”这个键是有一个名称的对吗?比如给一个“add”。当你点击这个“+”键时,这个“add”就传到了后台,判断是add时,需要相加的两个数字,用"+"这个运算符进行连接就OK了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yanziguosan
2007-12-12 · TA获得超过197个赞
知道答主
回答量:21
采纳率:0%
帮助的人:8.9万
展开全部
呵呵,我们一块进步吧,
对于java和c我不敢评论那个更好用那个不好用,毕竟自己也是刚学。
不过有一点c永远也比不上java
那就是开源
现在这年头,一般是谁开源谁就有前途 特别烂的东西就不说了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帐号已注销
2007-12-07 · TA获得超过7524个赞
知道小有建树答主
回答量:1463
采纳率:0%
帮助的人:1379万
展开全部
计算器这样的题课本上都会有的.

你看看书上是怎么写的就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(7)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式