Java 学习笔记 (四) Java 语句优化

这个问题是从headfirst java看到的。 

需求:

一个移动电话用的java通讯簿管理系统,要求最有效率的内存使用方法.

下面两段程序的优缺点,哪个占用内存更少。

第一段:

1 Contact[]ca = new Contact[10];
2      while(x<10){
3         ca[x]=new Contact();
4         x=x+1;
5     }
6 //执行其余复杂工作

第二段:

1 Contact refc;
2 While(x<10){
3     refc = new Contact();
4     x=x+1;
5     }
6 //执行其余复杂的工作

书上的解答: 

第二段有个重大缺陷.其所占用的内存是比较少,但是除了最后一个Contact对象外其它的都没办法存取. 因为从头到尾只有一个引用变量.此变量最后只能引用到最新建立出的对象.

原文地址:https://www.cnblogs.com/cheese320/p/8275546.html