本帖最后由 曲终烟尽 于 2015-5-27 21:53 编辑
ScannerTest 这个类里的功能我建议改成一个 while 大循环,当条件达成就break,跳出循环,条件不达成就回到while开头重新提示用户,而不是再三种情况都重新调用 scanner()函数,虽然说这是静态的函数,但我还是觉得不该这样,因为如果用户一直重复不选是,你就一直重复调用scanner(),而重新调用是有个上限次数的,原来了解过这些,你这个方法算是 递归baike.baidu.com/view/96473.htm,【递归占用内存空间大,效率还低,递归的次数越多,占用的内存空间会逐渐增加,当达到堆栈空间放不下时就会溢出。能用循环解决的就不用递归】
我原来在python里使用这种方式达到一定次数就出错了。java里应该也是有这样的问题。
有个经典的题是 汉诺塔,使用的就是重复调用自身函数实现的,在C语言里似乎没问题,不过比起来你这个功能我觉得还是用while靠谱。。。
|