当前位置:编程学习 > JAVA >>

JAVA资深程序员请进.对两个简单代码给予不同角度的评价

两份都是实现同一个目的 打印出菱形图案 ---------------------------------------------------------- //xiti2.java public class xiti { public static void main(String[] args) { int count = 5; for(int i = -(count - 1); i < count; i=i+1) { for(int j = 0; j < count; j=j+1) { int abs = i < 0 ? -i : i; System.out.print(abs - j > 0 ? ' ' : "* "); } System.out.println(); } } } ------------------------------------------------------------ //xiti2.java public class xiti2 { public static void main(String args[]) { System.out.println(" * "); { System.out.println(" ** "); { System.out.println(" *** "); { System.out.println(" **** "); { System.out.println(" *** "); { System.out.println(" ** "); { System.out.println(" * "); } } } } } } } } ----------------------------------------------------------- 请分别从 老师 程序员自身 程序执行效率 现实应用 几个角度 分别对这两个人进行评价 评价优秀我一定追加分数
补充:第二个 只需要加入空格就能与第一个达到一模一样的效果

一楼评价不够详细啊.  能再具体一点吗?

还有详细点的回答吗>>>???? 加分了!
答案:1、老师、程序员: 更应该写前一种,因为至少还有算法。体现了一个总结过程。
2、效率: 后一种的都用静态字符串粘贴,时间效率略高,空间效率略低;前一种的情况相反。
嵌套{影响不大,甚至会被编译器优化掉。
3、应用:一般会先写前一种有算法的情况,这样有统一和抽象。当算法效率不够时才会考虑用内存/空间换取很好的效率。对这种有规律的变化情况,粘贴3次以上雷同代码的就已经不好了。遵守不重复自己的原则Never Repeat Yourself.. 这2个例子的数据规模太小,没法体现效率差别,只能提醒一下书写原则。
其他:这是java的分支,如果你是学java的,就不难看出这两者的区别,如果是一个学者的话,学到java程序员这一步了,继续学就是java软件工程师了。我是一度教育 第一种写法:灵活性更高,改变count的值,可以得到不同的图案。
第二种写法:明显是小学生的做法。 

上一个:java面试时可以查API文档不?
下一个:java中如何将某个菜单项置为灰的,就是功能不可用

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,