一、java的数组
java的数组本质上是一个类,该类还保存了数据类型的信息。该类通过成员变量的形式来保存数据,并且通过[]符号,使用下标来访问这些数据。在处理基本类型数据时,数组保存的是变量的值,如果没有提供初始值,数组会把这些变量的值初始化,而处理引用类型时,数据保存的是数据的引用,如果没有提供初始值,数组会把这些变量的值初始化为null。
注意:new Object[5] 并没有创建了5个对象。
二、集合框架
集合是用来也只能存储其他对象的对象,代表了一种底层结构,用于扩展数组的功能。集合框架由一系列的接口和实现类组成,基本包括列表(List)、集合(Set)、映射(Map)等,它们大多具有可迭代性和可比较性。
如图:
列表(List):有序存放,允许重复,可以存放不同类型的对象。
集合(Set):无序存放,不允许重复,可存放不同类型的对象,SortedSet,排好序列的Set
映射(Map):俗称键值对,如手机中的电话本,SortedMap,排好序列的Map
二、迭代器
迭代器,提供一种访问一个集合对象中各个元素的途径,同时又不需要暴露该对象的内部细节。java通过提供Iterable 和Iterator两个接口来实现集合类的可迭代性。迭代器主要的用法就是,首先用hasNext()作为循环条件,再用next()方法得到每一元素,最后在进行相关操作。
import java.util.*;
public class IteratorTest
{
public static void main(String[] args)
{
List<String> list=new ArrayList<String>();
list.add("ye_");
list.add("hai");
list.add("qiang");
Iterator<String> it=list.iterator();
while(it.hasNext())
{
System.out.print(it.next());
}
}
}
结果为:ye_haiqiang
三、Vector和ArrayList 的区别
Vector是线性安全的,因为他操作元素的方法都是同步方法,而ArrayList不是。开发过程中应该根据需求进行选择,如果需要保存线程安全的地方则需要使用Vector,而不必要的时候无需使用Vector,因为ArrayList的效率比较高。
四、HashMap和HashTable的区别
1)HashTable的方法是同步的,HashMap不是
2)HashTable不允许null值(key和value都不可以),HashMap允许null。
3)HashTable有一个contains()方法,功能和containsValue()功能一样。
4)HashTable使用Enumeration,HashMap使用Iterator。
5)HashTable中hash数组的初始化大小及其增长方式不同
6)哈希值的使用不同,HashTable直接使用对象的hashCode,而HashMap会重新计算hash值
每天一点点希望对大家有利~
分享到:
相关推荐
数据类型 数组和集合 图形界面 输入输出流 线程池 网络编程
java代码,数组和集合,java数组.length的使用
数组和集合的排序.rar数组和集合的排序.rar
C#数组、集合对象和范型,讲解详细,对于编程很实用
JavaSE-数组集合和链表集合 数组和链表.docx
C#数组集合C#数组集合C#数组集合C#数组集合C#数组集合C#数组集合
这只是一个简单的工具类java中处理两个数组之间元素的情况,具体的情况可以分为:两个数组之间新增集合,公共集合,减少的集合
使用数组和集合PPT学习教案.pptx
数组声明了它容纳的元素的类型,而集合不声明。这是由于集合以object形式来存储它们的元素。 数组声明了它容纳的元素的类型,而集合不声明。这是由于集合以object形式来存储它们的元素。
这是本人写的一个基于JSON的完整项目,实现了Java对象、数组、集合转换为Json(Json转化为Java对象、数组、集合)。这是一个完整的项目,下载解压后直接导入MyEclipse/Eclipse中,运行com.demo.JSONDemo类即可看到效果...
Java基础教程:数组和集合
C#6数组和集合对象ppt课件.ppt
C6数组和集合对象.ppt
c++特别影印版第十章课后习题9 用数组实现集合哦,涵盖了交集,并集,差集等等
数组和集合PPT学习教案.pptx
java中的数组和集合共2页.pdf.zip
这是关于 Java 数组和集合的简要学习资料,涵盖了数组的声明、初始化、访问和遍历,以及 ArrayList 和 HashMap 的使用方法。希望这个资料对您有帮助!如果您有任何其他问题,请随时提问。
C#中的数组与集合类,vusual studio 2008教程
数组和集合-初级例程.e4a