能够用Java编写一个计算器是什么水平了

如题所述

水平应该说不错,如果表达式解析算法是自己实现的,而没有使用现成的类库。当然如果使用现成类库的话,稍微懂一点java的人都能写出来。
我个人认为一个计算器的编写还是不太容易的,我已经工作一年多了,但是如果让我现在写一个计算器,一时半活儿还真写不出来。
我觉得计算器的算法实现还是有点复杂的,如果没有系学过数据结构,一般情况下是写不出来的(不知道有没有特例)。

一个计算器的实现,主要是算法方面的要求(当然已经存在成熟算法了),一个人即使ejb,spring,hibernate,html等知识懂的再多,也未必真的写出一个计算器。像ejb,spring,hibernate这些只是一些具体技术与工具,只要你掌握了一定的编程经验和编程理念,学这些框架不用花很多时间,在日常开发过程中,也会接触各种各样的新框架,新技术,技术这种东西是没有止境的,也许你今天会的东西,明天就已经过时了,所以不断的学习新的东西。
而一些理论基础在相当长的时间内是不会过时的,正如数学表达式解析,无论是使用java,还是使用c语言,本质上没有任何区别,考虑的一般都是堆栈或二叉树。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-09-18
曾经我自己写了一个连连看游戏,以为自己很了不得了,可惜后来才发现,那只是说明我刚刚入了门,但这个门既不是C语言也不是java或者任何其他编程技术的门,更不是编程的门,而是学编程和任何编程语言都要入得基础门,换句话说就是知道什么是编程了,因为我直到现在也是既没有任何编程思想,也对数据结构和算法等重要基础理解不深,我学的是也是java,却对java这门编程语言的特性的了解少之又少,我现在做的最多的就是代码拷贝拼装+简单调整,而之前连这些都做不到,只是通过简单的ifelse逻辑把自己的大白话罗列成符合java语法的代码,还难免出现一堆语法错误,所以大部分精力是在应付java语法而非编程。直到现在我也不能说自己到了什么水平,只能说我比以前进步了多少,只要还在进步就够了,可惜近日终于发现自己已经在原来水平上滞留很长时间了,这才有点沮丧了。
不好意思,有感而发占用了你这么多空间,不管怎么说,你的水平不用看你所说的计算器,从你完成计算器这件事和你的这个提问本身就能看出来了,因为一个完整的计算器算法会涉及很多原始的数据结构设计思想和典型的算法,当然也有海量的参考源码和简易实现例子,正适合做入门级练习,如果不是出于数据和算法重构的研究,有点水平的人是不会感兴趣的,而你能完成他,无论其中涉及的算法是不是你自己实现的,都体现了你一个水平:刚完成了一个入门级练习,而不是刚开始练习,大体上掌握了java基础语法和一些基本概念,可以说基础扎实了,但对基础的学习还不能松懈。
我建议系统学习一下java的其他核心基础,如集合框架,socket,多线程,反射,泛型等,多做些简单的例子,估计至少得两个月吧,伴随这个学习过程还要简单了解一下java的jvm和内存分配等原理性的东西,有助于你基础的进一步扎实,这些原理性东西不必在一时深究,他们及其重要性会随着你的学习慢慢理解的,学习过程中不仅学习具体技术,还要注意思考这些具体技术设计理念,如类之间的关系等,加深对编程思想的认识和理解(本人认为java虽是面向对象的,但面向对象不一定都是好的),这都是基础,然后就可以进一步选方向学习加实践了,当然如果基础好,无论选哪个方向都会很容易了,但会遇到很多多延伸性的知识,如学习实践中不可能不用到数据库,那就要求sql知识了,javaEE方向,对jsp的学习和使用离不了html基础,js的使用和学习也越来越重要了,还有xml实际程序中也用的越来越多,听说将来会更火,所以对这些也应提前有个准备,说了这么多,主要是想多提供些参考信息,让你自己也衡量一下自己的水平,为下一步的奋斗做更好的准备,别嫌本人罗嗦啊。
不过这些也都只是我个人愚见,你可以辩证性的参考,如果哪里不对也别被我误导了本回答被提问者采纳
第2个回答  2010-09-17
要看什么计算器了。
有C语言基础的话。
命令行计算器:2天就够了
图形界面计算器:大概1个月吧。
第3个回答  2010-09-18
我们学j2se的时候 学了没一周 就可以做了
第4个回答  2010-09-17
高手
相似回答