`
racingbird
  • 浏览: 23700 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

深入容器List

 
阅读更多

 

一种Generator解决方案:

所有Collection子类型都有一个接受另一个Collection对象的构造器,

用所接受的Collection对象中的元素来填充新的容器。为了更加容易

地创建测试数据,我们需要做的是构建接受Generator和quantity

数值并将他们作为构造器参数的类。

 

 

 

	public class CollectionData<T> extends ArrayList<T>{
		public CollecitonData(Generator<T> gen, int quantity){
			for(int i=0; i<quantity; i++)
				add(gen.next());p
		}

		public static <T> CollectionData<T> 
			list(Generator<T> gen, int quantity){
			return new CollectionData<T>(gen, quantity);
		}
	}

	class Government implemetns Generator<String>{
		Stirng[] foundation = ("Stringe women lying in ponds"+
			"distributing swords is no basis for a system of"+
			"government").split(" ");
		
		private int index;
		public String next(){
			return foundation[index++];
		}
	}

	public class CollectionDataTest{
		public static void main(String[] args){
			Set<String> set  =new LinkedHashSet<String>(
				new CollectionData<String>(new Government(),15));
			set.addAll(CollectionData.list(new Governmetn(), 15));
			System.out.println(set);
		}
	}
 
分享到:
评论

相关推荐

    第17章 - 深入研究容器 - Collection(List,Set,Queue)的性能测试框架(单线程中)(P501)

    在深入研究Java集合框架,特别是List、Set和Queue的性能测试时,我们通常会关注它们在单线程环境中的表现。这些容器是Java编程中不可或缺的一部分,用于存储和管理对象。本章将探讨如何构建一个性能测试框架来比较...

    QT之list容器

    本教程将深入讲解QT list容器的基本概念、用法以及如何在实际项目中有效地运用。 首先,QT的list容器基于STL(Standard Template Library,标准模板库)的std::list模板类,它是一个双向链表。这意味着每个元素都有...

    C++标准模板库中list容器实现

    下面将深入解析`list`容器的实现及其相关知识点。 首先,我们要理解`list`容器的基本概念。`list`由一系列的节点组成,每个节点包含一个元素和两个指针,分别指向前一个和后一个节点。这种设计使得在链表中插入或...

    JAVA容器效率深度分析List

    本文将深入分析Java中的List接口及其常见的实现类,如ArrayList、LinkedList和Vector,探讨它们的效率差异和适用场景。 首先,List是Java集合框架中的一个重要接口,它扩展了Collection接口,并规定了元素的有序性...

    Java应用:两种Java容器类List和Set分析

    本文将深入探讨Java中的两种重要容器类——`List`和`Set`,并分析它们之间的区别以及各自的适用场景。 #### 二、Java容器类List详解 **1. List接口简介** - `List`接口是`Collection`接口的一个子接口,主要特点...

    Docker中的Alist挂载qBittorrent实现离线下载

    在本文中,我们将深入探讨如何在Docker环境中利用Alist挂载qBittorrent来实现离线下载。首先,理解这个过程的关键在于Alist和qBittorrent的集成以及Docker容器之间的通信。 1. **配置Alist连接qBittorrent** - ...

    演示Sequence容器vector

    为了深入了解这些容器的内部实现,我们可以查看源码,如`&lt;vector&gt;`、`&lt;list&gt;`和`&lt;deque&gt;`头文件。源码会揭示如何管理内存、如何实现迭代器以及如何优化特定操作。例如,`vector`的动态扩展策略、`list`的节点管理,...

    Java容器类的深入理解

    本文主要关注的是Java中的两种主要容器类型:Collection和Map,以及它们的一些具体实现,如List接口下的ArrayList、LinkedList和Vector,以及Map接口下的HashMap和Hashtable。 首先,我们来看List接口。List是有序...

    c++容器使用经验总结

    本篇文章将深入探讨C++容器的使用经验,帮助开发者更好地理解和运用这些工具。 首先,选择合适的容器类型至关重要。C++标准STL提供序列容器如vector、string、deque和list,以及关联容器如set、multiset、map和...

    揭秘 C++ List 容器背后的实现原理,带你构建自己的双向链表

    《 C++ 修炼全景指南:四 》揭秘 C++ List 容器背后的实现原理,带你构建自己的双向链表 ...通过本篇文章,读者将深入理解 std::list 的实现原理,并掌握如何构建一个强大且高效的容器类。

    C++ 顺序容器基础知识总结

    C++中的顺序容器是STL(标准模板库)的一部分,用于存储元素序列。它们是模板类,因此能够存储任何类型的对象。...此外,官方文档是学习容器接口和使用实例的重要资源,可以为程序员提供更深入和全面的学习材料。

    每天学点C++(C++实例教程:教程+源码)list容器.zip

    通过实际的源码例子,你可以更深入地理解`std::list`的工作原理和用法。下载的"list容器.zip"教程可能包含了各种`std::list`的实际应用示例,如动态构建、遍历、插入和删除操作,以及如何与其他容器(如`std::set`...

    list_list_STL_C++_

    本篇文章将深入探讨`list`容器的基本概念、操作以及在实际编程中的应用。 **1. list容器的基本概念** `list`是C++ STL中的一个模板类,它实现了一个双向链表。这意味着每个元素都有指向前一个和后一个元素的指针,...

    09、并发容器(Map、List、Set)实战及其原理

    本课程"09、并发容器(Map、List、Set)实战及其原理"深入探讨了如何在多线程环境下有效使用Map、List和Set这三种核心数据结构。下面我们将详细讲解这些并发容器的关键知识点。 1. **并发容器概述**: 在并发编程...

    List set map集合容器的区别

    根据给定文件的信息,我们可以详细地探讨一下Java中几种主要的集合容器——List、Set以及Map的区别,并且深入了解它们各自的特性和应用场景。 ### 一、List #### 1. ArrayList - **特点**:`ArrayList`是基于动态...

    JAVA容器知识积累

    在这个主题下,我们将深入探讨Java中的核心容器类,包括数组、List、Set和Map,以及它们各自的特点和使用场景。 1. **数组**:数组是最基本的容器形式,它允许存储相同类型的数据元素,并通过索引来访问。数组提供...

    java容器学习心得

    本文将深入解析Java容器的关键概念、特性以及不同容器类型的应用场景。 #### 一、Collection与Map容器详解 1. **Collection容器**:这是Java中最基础的容器类型,它包括`List`、`Set`等子接口,用于存储一组不重复...

    基于Python语言的List容器操作设计源码

    该项目是Python语言实现的List容器操作设计源码,包含78个文件,包括33个Python源代码文件、19个PNG图片文件、6个Markdown文件、3个XML文件和少量其他类型文件。项目旨在深入探索Python列表容器的操作技巧和应用。

    java练习题--容器使用练习

    本练习题旨在帮助你深入理解和熟练掌握Java中的容器使用,特别是其核心类库`java.util`中的ArrayList、LinkedList、HashSet、HashMap等。通过解决这些练习题,你将能够更好地了解容器的基本操作,如添加、删除、查找...

Global site tag (gtag.js) - Google Analytics