编程基础:Java中的数据结构

欢迎进入Java社区论坛,与200万技术人员互动交流 >>进入

是否选择了合适的数据结构进行数据处理对系统的性能有着极大的影响,JDK中提供了常用的数据结构的实现类,比如链表、堆栈、哈希表,很多第三方开源库也进行了有益的扩展。关于这些类的原理以及使用可以参考相关的手册,在本节中重点讲解一些使用中需要注意的问题。1.1.1.增量内存分配 ArrayList、HashMap、Vector等类都允许我们向其中加入任意多的对象,从而进行处理的,我们在享受它们带来的便利的同时也要注意一定的性能问题。以ArrayList为例,我们来看一下在很多情况下是如何编写出低性能的代码的:Cownew开源原创:http://www.cownew.comhttp://www.blogjava.net/huanzhugege在一个数组中有若干个对象,对象的类型都是PersonInfo,PersonInfo的类结构如下:publicclassPersonInfo{//身份证号码privateStringid;//姓名privateStringname;//年龄privateintage;publicPersonInfo(Stringid,Stringname,intage){super();this.id=id;this.name=name;this.age=age;}publicintgetAge(){returnage;}publicStringgetId(){returnid;}publicStringgetName(){returnname;}}请将所有这些PersonInf的身份证号码,也就是id属性,提取出来,放到另一个List类型的变量中。实现代码1:PersonInfo[]persons=newPersonInfo[]{newPersonInfo(“00001″,”Tom”,20),newPersonInfo(“00002″,”Tim”,23),newPersonInfo(“00003″,”Sally”,26),newPersonInfo(“00005″,”Lily”,20),newPersonInfo(“00006″,”Lucy”,30),newPersonInfo(“00008″,”Kitty”,20),newPersonInfo(“00011″,”Smith”,20),newPersonInfo(“00031″,”Ketty”,22),newPersonInfo(“00051″,”Melly”,20),newPersonInfo(“00022″,”Blues”,20),newPersonInfo(“00033″,”Tid”,18),newPersonInfo(“00101″,”Duoliaos”,30),newPersonInfo(“00201″,”Yang”,26),newPersonInfo(“03001″,”King”,20),newPersonInfo(“05001″,”Lee”,20),newPersonInfo(“10001″,”Wang”,20),newPersonInfo(“06001″,”Pizza”,60)};Listlist=newArrayList();for(inti=0,n=persons.length;i<n;i++){PersonInfopInfo=persons[i];list.add(pInfo.getId());}

[1][2][3][4]

背着背包的路上,看过许多人,

编程基础:Java中的数据结构

相关文章:

你感兴趣的文章:

标签云: