Java - 编程基础:Java中的数据结构(1)
来源:互联网 发布:淘宝家具好卖吗 编辑:程序博客网 时间:2024/06/06 01:43
是否选择了合适的数据结构进行数据处理对系统的性能有着极大的影响, JDK 中提供了常用的数据结构的实现类,比如链表、堆栈、哈希表,很多第三方开源库也进行了有益的扩展。 关于这些类的原理以及使用可以参考相关的手册,在本节中重点讲解一些使用中需要注意的问题 。
1.1.1. 增量内存分配
ArrayList 、 HashMap 、 Vector 等类都允许我们向其中加入任意多的对象,从而进行处理的,我们在享受它们带来的便利的同时也要注意一定的性能问题。以 ArrayList 为例,我们来看一下在很多情况下是如何编写出低性能的代码的:
Cownew开源原创:
http://www.cownew.com
http://www.blogjava.net/huanzhugege
在一个数组中有若干个对象,对象的类型都是 PersonInfo , PersonInfo 的类结构如下:
public class PersonInfo
{
// 身份证号码
private String id;
// 姓名
private String name;
// 年龄
private int age;
public PersonInfo(String id, String name, int age)
{
super();
this.id = id;
this.name = name;
this.age = age;
}
public int getAge()
{
return age;
}
public String getId()
{
return id;
}
public String getName()
{
return name;
}
}
请将所有这些 PersonInf 的身份证号码,也就是 id 属性,提取出来,放到另一个 List 类型的变量中。
实现代码 1 :
PersonInfo[] persons = new PersonInfo[] {
new PersonInfo("00001", "Tom", 20),
new PersonInfo("00002", "Tim", 23),
new PersonInfo("00003", "Sally", 26),
new PersonInfo("00005", "Lily", 20),
new PersonInfo("00006", "Lucy", 30),
new PersonInfo("00008", "Kitty", 20),
new PersonInfo("00011", "Smith", 20),
new PersonInfo("00031", "Ketty", 22),
new PersonInfo("00051", "Melly", 20),
new PersonInfo("00022", "Blues", 20),
new PersonInfo("00033", "Tid", 18),
new PersonInfo("00101", "Duoliaos", 30),
new PersonInfo("00201", "Yang", 26),
new PersonInfo("03001", "King", 20),
new PersonInfo("05001", "Lee", 20),
new PersonInfo("10001", "Wang", 20),
new PersonInfo("06001", "Pizza", 60) };
List list = new ArrayList();
for (int i = 0, n = persons.length; i < n; i++)
{
PersonInfo pInfo = persons[i];
list.add(pInfo.getId());
}
- Java - 编程基础:Java中的数据结构(1)
- 编程基础:Java中的数据结构
- Java - 编程基础:Java中的数据结构(2)
- Java - 编程基础:Java中的数据结构(2)
- 编程基础:深入分析Java中的数据结构
- Java编程中的经验教训-Java基础-Java-编程开发
- java编程基础1
- java编程基础1
- java基础编程#1
- java中的基础《1》
- Java中的浮点数分析-Java基础-Java-编程开发
- java编程基础中的一些小细节
- Java基础之数据结构
- JAVA 基础数据结构
- JAVA 基础数据结构
- java数据结构基础
- java 基础数据结构
- Java数据结构-基础排序
- Java专题 - Java内部类 - Java中的内部类和匿名类(1)
- 今天参加了marvell的培训与研讨会
- JSP/Servlet应用程序优化八法
- Java专题 - Java内部类 - Java中的内部类和匿名类(2)
- css+div打造圆角“表格”
- Java - 编程基础:Java中的数据结构(1)
- 网站优化的十大奇招妙技(五)
- Java - 编程基础:Java中的数据结构(2)
- .NET里面的托管代码
- Java - 编程基础:Java中的数据结构(2)
- 采用事件相应实现的简单画图程序
- Ubuntu 下的Tomcat 安装犯的一个不可能犯的错误
- IE不能打开新链接的修复方法
- 控制台输出控制