集合类层次结构关系

翻译人员: 铁锚
翻译时间: 2013年11月15日
原文链接:  The interface and class hierarchy diagram for collections with an example program

1. Collections(工具类) 和 Collection(集合顶层接口) 的区别
首先, “Collection” 和 “Collections” 是两个不同的概念. 从下面几幅图可知,“Collection”是集合继承结构中的顶层接口,而 “Collections” 是提供了对集合进行操作的强大方法的工具类.
图1
2. Collection继承结构
下图展示了集合类的层次结构关系:
图2
3. Map 类层次结构
下图是Map的类层次结构:
图3
4. 相关类汇总

通用实现类
接口哈希表可变数组链表List哈希表+链表
SetHashSet TreeSet LinkedHashSet
List ArrayList LinkedList 
Queue     
MapHashMap TreeMap LinkedHashMap

5. 示例代码
下面是说明一些集合类型的简单示例:
import java.util.*;
 
public class Main {
 
	public static void main(String[] args) {
		List<String> a1 = new ArrayList<String>();
		a1.add("Program");
		a1.add("Creek");
		a1.add("Java");
		a1.add("Java");
		System.out.println("ArrayList Elements");
		System.out.print("\t" + a1 + "\n");
 
		List<String> l1 = new LinkedList<String>();
		l1.add("Program");
		l1.add("Creek");
		l1.add("Java");
		l1.add("Java");
		System.out.println("LinkedList Elements");
		System.out.print("\t" + l1 + "\n");
 
		Set<String> s1 = new HashSet<String>(); // or new TreeSet() will order the elements;
		s1.add("Program");
		s1.add("Creek");
		s1.add("Java");
		s1.add("Java");
		s1.add("tutorial");
		System.out.println("Set Elements");
		System.out.print("\t" + s1 + "\n");
 
		Map<String, String> m1 = new HashMap<String, String>(); // or new TreeMap() will order based on keys
		m1.put("Windows", "2000");
		m1.put("Windows", "XP");
		m1.put("Language", "Java");
		m1.put("Website", "programcreek.com");
		System.out.println("Map Elements");
		System.out.print("\t" + m1);
	}
}
输出结果:
ArrayList Elements
	[Program, Creek, Java, Java]
LinkedList Elements
	[Program, Creek, Java, Java]
Set Elements
	[tutorial, Creek, Program, Java]
Map Elements
	{Windows=XP, Website=programcreek.com, Language=Java}

相关文章:

  1. java io class hierarchy diagram
  2. Top 10 questions about Java Collections
  3. Java 异常类层次结构
  4. Operating System Concepts Hierarchy Diagram

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CSDN是一个以技术为主题的社区平台,其中涵盖了各种编程和计算机科学相关的内容。在数据结构这一领域中,CSDN对其进行了细分和分,以方便用户查找和学习相关知识。 CSDN将数据结构分为几个主要分: 1. 线性结构:这一分主要包括各种线性数据结构,例如数组、链表、栈和队列等。线性结构的特点是数据元素之间存在一对一的关系,可以按照特定的顺序存储和访问。 2. 树结构:包括二叉树、平衡树、二叉搜索树等。树结构具有层次分明的特点,可以用于表示层级关系和递归结构。其中二叉搜索树是常用的数据结构之一,能够快速地进行查找、插入和删除操作。 3. 图结构:图是由节点和边组成的集合,用于表示各种复杂的关系和网络结构。在图结构分中,常见的包括有向图、无向图、带权图等。图结构的应用广泛,例如社交网络、路由算法等领域。 4. 散列结构:散列结构是通过散列函数将数据元素映射到存储位置的一种数据结构。散列结构可以实现快速的查找和插入,常见的应用有哈希表、集合和字典等。 此外,CSDN还对数据结构进行了更细致的分,如查找算法、排序算法等。这些分有助于用户深入了解和学习数据结构,掌握各种数据结构的基本原理和应用场景。 总之,CSDN通过分整理和归纳,为用户提供了一个方便、系统的学习数据结构的平台,使用户能够有针对性地查找和学习相关知识。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值