如果想存储多个人物信息可以使用数组实现但是采用数组存以下明显缺陷:
数组长度不变不能适应元素变化情况,若存储大于20个英雄信息则长度不够,若只存储10个则造成内存空间浪费、可用.length获取数组中的真实存储的英雄个数
数组采用内存分配连续空间存储方式,根据下标可快速获取相对应的信息,但根据英雄信息查找时效率低下进行频繁插入,删除操作时间效率低下数组不能存储引用类型(对象)
集合的好处:集合相对于数组的优势之一为长度可变,(动态)
HashMap是无序的,随机存放,允许null值(key和value都为null)
ArrayList和LinkedList遍历简单方法:for(泛型名 变量:集合变量名称)
ArrayList和LinkedList的大致区别:
ArrayList是基于动态数组的数据结构,LinkedList是基于链表的数据结构
对于随机访问get和set,ArrayList要由于LinkedList,因为LinkedList要移动指针(箭头指向)
对于新增操作LinkedList要优于ArrayList,因为ArrayList要移动数据
java中有8个包装类在java.lang包中(常用基本数据类型):Byte,Short,Intrger,Long,Float,Double,Boolean,Character
byte,short,int,long,float,double,boolean,character
课后题:
以下关于List与Set集合说法正确的是
A、List集合都可以通过下标遍历 B、Set集合一般采用迭代器遍历 C、List集合,可重复,有序
HashMap允许null键和值 HashTable不允许null键和值
在我们所学知识中,下面哪几项是接口 、java.util.Map 、java.util.Collection、java.util.List、java.util.Set
ArrayList集合的特点是:底层是数组数据结构、是线程不安全的
关于Java语言,下列描述正确的是 jdk7之前switch 不能够作用在String类型上 GC是垃圾收集器,程序员不用担心内存管理
在集合框架中,可以解决类型转换问题的是 泛型
下列关于泛型说法正确的是 下列关于泛型说法不正确的是 泛型可以避免强制类型转换 泛型是一种安全机制
iterator()方法的功能是什么 获取迭代器对象
Itetator迭代器中的hasNext()方法的作用是 判断集合中是否还有下一个元素
下列描述LinkedList集合特点正确的是 是线程不安全的
ArrayList类的底层数据结构是 数组结构
LinkedList具有的特点是 不必事先估计存储空间 插入删除不需要移动元素 所需空间与线性表长度成正比
关于HashMap的说法正确的是_ 如果存在映射关系isEmpty()方法返回false