当前位置:文档之家› Collection框架

Collection框架

Collection框架
Collection框架

。J2SE Collection框架的分析(zt)2007-12-19 15:141.

接口

整个Java容器类的基础是容器接口(例如Collection,Map等接口),而不是类。使用接口的最大好处在于将容器的实现与容器的接口分开,这就意味着你可以使用相同的方法访问容器而不用关心容器是由什么样的数据结构实现的。同样,Iterator接口也使得用户可以使用相同的方法访问不同的容器类。以上这些是通用算法的基础。

1.1 Collection接口

Collection接口有如下基本方法:

boolean add(Object obj):如果添加对象后,集合确实发生了变化,则返回true;否则返回false Iterator iterator():返回一个实现了Iterator接口的对象

此外,还有

int size(),boolean isEmpty(),boolean contains(Object obj),void clear()等许多有用的方法

1.2 Map接口

Map用于存放关键字/值对。有如下基本方法:

Object get(Object key)

Object put(Object key,Object balue)

Set keySet()

Set entrySet()

此外,还有其他有用的方法。

需要注意的是,从表面看它似乎就是一种由键值对构成的集合,但实际上并不是这样。不过另一方面假如将Map的某一部分看作集合,有时候也还是显得非常方便的。换言之你可以创建一个集合用它来表达Map的那一部分。综上所述,一个Map可以返回的东西包括它的键值构成的一个Set、由它的值构成的一个集合或者由它的键值对构成的一个Set。

1.3 Iterator接口

Iterator接口有下面3个基本方法:

Object next():返回迭代器刚越过的元素的引用

boolean hasNext():判断容器内是否还有可供访问的元素

void remove():删除迭代器刚越过的元素

注意:Java中的迭代器与STL中的迭代器在概念上有很重要的区别。在STL中,迭代器类似于数组的索引,使用这种迭代器可以查看存放在该位置上的元素(类似于通过数组索引i 来访问c[i]一样)。Java中的迭代器并不这样运行。查看与位置的变化紧密的结合在一起。每次通过next()访问一个元素的同时,迭代器的位置会自动向前走一步。

这个问题可以这样理解:Java中的迭代器指向的位置并不是元素,而是元素之间。这样,每次调用next()时,迭代器便越过下一个元素,同时返回它刚越过的那个元素的引用。

根据上面的说明,很容易得出下面的代码是错误的:

it.remove();

it.remove();

而下面的代码是正确的:

it.remove();

it.next();

it.remove();

迭代器的典型应用

Iterator it=c.iterator();

while(it.hasNext())

{

Object obj=it.next();

//do something with obj

}

1.4 子接口

1.4.1 List接口

List从Collection接口中分立出来是因为List的特点——有序的集合。这里指的有序并不是按照大小排好序的(Sorted),而是指集合是可以以确定的顺序访问的序列。针对List的这个特点,它比Collection接口增加了通过索引进行操作的方法。例如,add、remove、get、set等方法的参数表中都可以加入索引的数值,从而操作处在索引位置处的元素。

1.4.2 Set接口

Set与List的不同,它里面的元素是无序的;所以,不能通过任何索引的方法来操作Set对象

1.4.3 ListIterator接口

使用与List的迭代器,比Iterator接口增加了一些方法(例如add()等)。此外,由于List是双向表,所以还增加了Object previous()和boolean hasPrevious()方法,用法与next()和hasNext()一样。

1.4.4 SortedMap接口

包含如下基本方法:

Comparator comparator()

Object firstKey()

Object lastKey()

2. 抽象容器类

2.1 抽象容器类包括AbstractCollection,AbstractList,AbstractSet等等

2.2 为什么要有抽象结合类?

例如Collection接口中定义了许多有用的方法,如果实现Collection接口的每个类都自行实现这么多的方法,那将是非常麻烦的。为了使实现Collection接口的类的实现更容易,AbstractCollection类让一些基本方法(比如add()和iterator())变成了抽象的方法,而利用这些基本方法的其他方法(例如addAll()等等)则具体实现了。

3. 具体的容器

3.1 ArrayList与LinkedList

都是实现了List接口的类,是有序集。List接口支持通过索引的方法来访问元素,对于这一点,ArrayList没有任何问题;但是对于LinkedList则有很大的问题,链表本身不应该支持随机存储,但是作为List的一个实现,链表也提供了对随机访问的支持,但是效率很低。每次

通过索引的方法都是进行一次遍历。我认为,其实就不应该让链表支持随机访问;而Java 这样实现我想是因为整个集合框架的体系,使得链表与数组可以使用同样的方法使用。综上所述,对于LinkedList最好不使用随机访问,而使用迭代器。

3.2 TreeSet

3.2.1 TreeSet是SortedSet的一个实现。根据数据结构的知识可以知道,树的效率非常高,而且Java标准库中有TreeSet这样的类,以后应该尽量使用TreeSet来提高程序的效率。

3.2.2 需要注意的是:TreeSet作为有序集,它通过compareTo或者Comparator来将集合元素排序。任何具有相同比较值的元素(无论它们是否equals()),在TreeSet中都作为同一个元素,从而不能有重复。这样以来,即使是不同的对象也不能加入到集合中,这一点有时候很不方便。我在编写A*算法时,不同状态有时候对应着同一个启发函数值,那么这些不同的状态就无法加入到TreeSet中。

3.3 HashSet

3.3.1 HashSet是非常高效的数据结构,与TreeSet不同,HashSet是比较对象的equals()方法来区分不同的对象。这样只有真正不同的对象才能不被重复的加入到集合中。

3.3.2 需要注意的是:HashSet效率非常高,但是对象的hashCode函数不好确定。一般默认的对象的hashCode函数是根据对象的内存地址得到的。好的hashCode函数是HashSet成功运用的关键。

4. 视图

4.1 什么是视图?

对映象类使用keySet()方法,仿佛该方法建立了一个新的集合,并将影响的所有关键字都填入这个集合。实际情况并非如此,对这个集合的任何操作都将反映到原始的映象对象上。实际上,keySet()返回的是一个实现Set接口的对象,对该对象的操作就是对映象的操作。这样的集合成为视图。

4.2 视图的应用

4.2.1 将现有的容器变为线程安全的容器:使用Collections.synchronizedCollection(Collection

c)方法,在SDK文档中该方法的解释是“Returns a synchronized (thread-safe) collection backed by the specified collection”。

4.2.2 将现有的容器变为只读的容器:使用Collections.unmodifiableCollection(Collection c)方法,在SDK文档中该方法的解释是“Returns an unmodifiable view of the specified collection.”。

4.2.3 子范围

4.2.4 Arrays类中的asList()方法

5. 通用算法

通用的集合接口带来的一大好处就是可以编写通用算法。可以使用Collections中的静态通用方法,也可以编写自己的通用方法。

(具体的算法的内容在此略去)

总结:千万记住这句话——没有最好的容器(数据结构),要根据不同的问题选择不同的容器,以此来达到功能的要求和效率的最优。

细节描写作文训练

作文系列训练一——细节描写 教学目标: 1、理解什么是“细节描写” 2、掌握人物、景物、生活等细节描写的写法 3、能运用细节描写写几段话 教学难点、重点:掌握人物、景物、生活等细节描写的写法 教学流程: 一、出示四副漫画,让学生说说漫画中的细节 1、读一读,出示两篇学生习作的片段,比较:哪段文字比较好,为什么? 明确:第二个片段好,因为选段2文字抓住了“我”的一些语言、心理、动作、以及以及周边的环境等细节来表现母爱,感情真挚细腻,能打动读者。 由此引入课题——细节描写 著名女作家池莉曾说过: 我偏爱生活的细节。我觉得人类发展了这么多年,大的故事怎么也逃不出兴衰存亡,生老病死,只有细节是崭新的,不同的时空,不同的人群,拥有绝对不同的细节。 2、什么是细节描写? 细节描写是对事件发展和人物的性格、肖像、心理、动作以及环境等一些细微而又有典型意义的情节所做的细腻、具体的描写。 (场面描写:是事件发生过程中人物活动的画面描写) 3、如何进行细节描写? 在关键处驻足,“慢”说细微之处 细节描写 的分类 人物细节描写:外貌、语言、动作、情态、心理 景物细节描写:自然环境、社会环境、动物、静物 生活细节描写: 情节、事件的细节描写

例:可我能感觉妈妈并没有出去,反而好像到了我的床前。我微微睁开眼,妈妈果然站在我的床边,眼睛愣愣地看着我。 方法一:细化动作、延长过程 ……眼睛看着我,我分明地感觉她的目光在我的头发上抚摸,妈妈好长时间没有爱抚我的头发了,她在回忆那逝去的岁月吗?妈妈的目光抚上了我的眉,漫上了我的眼,我的眼珠不自觉地转动了几下,她的目光便一如我儿时她那双温柔的手,轻轻地按摩着我的眼睑,我知道她在让我好好睡眠。妈妈的目光滑到了我的脸颊上,似乎在找寻着什么,我知道那是在找她自己影子,又似乎在欣赏着什么,我知道,那是在欣赏凝聚她一生心血的艺术品。…… 方法二:运用修辞,画其神韵 眼睛愣愣地看着我,那是什么样的眼神啊!那是第一缕晨曦对娇花的抚弄,那是三月里的春风对碧水的温柔,那是夏日晚霞对嫩柳的辉映,那是秋夜月光对修竹的依恋,那是冬日里的朝阳与小草的交谈! 练笔:我来试试 就某一位任课老师从教室门外走进课堂到正式上课这一过程所表现出的一系列动作进行细致描写。 温馨提醒: 细节描写一定要为表现人物形象服务,一定要服从文章主题的需要。 几种常用的方法 运用演示 1、动作细节描写,就是对人物细小的动作的描写。 把握动作描写的方法具体写出动作的过程 描写人物行动时,不仅要写出他在做什么,更要写出他在怎样做,特别是他“怎样做”时常常被人忽略的细枝末节,即看似无关紧要的“小动作”,以此来凸现人物的个性特征——思想的、品格的、性格的、心理的以及习惯的,等等,这就是“细节传神” 。 例:那天,他在雪地里罩住了一只小鸟。 他扫开一块雪,露出地面,用一枝短棒支起一面大的竹筛来,下面撒些秕谷,捧上系一条长绳,人远远地牵着,看鸟雀下来啄食,走到竹筛底下的时候,将绳子一拉,便罩住了。 2、把握肖像描写的方法 我看见一个小姑娘,年龄不大,长得很瘦,穿得也很差。 1.步步追问 ①“小”到什么程度?②怎么个“瘦法”?③穿得有多“差”? 2.想像延伸、局部描写

全脑速读速记-1眼肌训练-第25课眼肌训练

逍遥右脑速读记忆培训教案25 【教学内容】 这节课开始我们开始进行快速阅读训练的学习,本节课主要是了解下速读的基本原理,速读的作用,以及学习速读的好处。简单的分析下速读和普通阅读的区别,了解普通阅读的速度上不去的原因。最后进行速读训练最基本的眼肌移动训练。 同时巩固上一阶段的呼吸训练、心理放松训练。进行更高层次的右脑活化训练,引入一个新的平衡左右脑的小游戏:彩字训练。 【教学要求】 本节课是速读训练的第一课,刚开始进行眼肌训练的时候,眼睛会比较累,会有酸痛和流泪等现象。一定要告诉小朋友按设计的时间要求来训练,不要延长每项训练的时间。 在做视点左右移动、上下移动和对角线移动训练的时候,时间都是一分钟。要在一分钟的时间内,最快速的来回反复看,越快越好。注意巡视学员的眼睛,不断的提醒加速,要求学员一次比一次快,最后达到5秒左右就看完一次卡片。可以适当的提醒时间。比如:还有10秒请大家加速,还有5秒请大家加速等。 【教学过程】

一、腹式呼吸训练约4分钟 现在我们一起闭上眼睛,平静心情,然后深呼吸三次 下面我们把两脚放平,宽度与肩膀平齐 大腿与小腿成90度,小腿与脚成90度 现在我们挺直后背,后背离开椅子,不要靠在椅子上 注意不要使劲,不要让肌肉感觉到紧张。 尽量让身体全部放松,不要身体僵硬。 好!现在头轻微向下倾斜,深呼吸三次 嘴唇合拢,舌尖靠在上面的牙龈上。 下面我们完整的做3分钟的腹式呼吸训练 一共2个步骤吸气8秒然后吐气8秒 请跟着老师的节奏来做这2个步骤 吸气(8秒)吐气(8秒) 二、心理放松训练约6分钟 下面请小朋友们按照我的提示,一步的来跟我做一次心理放松训练 (老师用轻缓的语速,轻声的、慢慢的向学员表述) 1、用你最舒适的姿式,闭上眼睛进行深呼吸(3-4秒),反复五次。 呼气时要把紧张和废气一同吐出去,使紧张离开你的身体。 2、想象自己站在大厦的七楼上。墙壁的颜色是鲜红色的,墙壁上写着一个白色的“7”字。深呼吸,呼气时心里默念“7”。穿过鲜红色的走廊,

托收(Collection)在外贸中作用重大

( ) 分类: 第一部分:托收情形: 一、由接到委托指示地银行办理“金融单据”和或“商业单据”以使取得承兑或付款; 二、由接到委托指示地银行凭承兑或付款交出商业单; 三、凭其他条件交付单据;文档收集自网络,仅用于个人学习 第二部分:光票托收 一、光票托收定义: ,仅凭票据等“金融单据”委托银行代为收款; ,不附带“商业单据”; 二、光票托收用途: ,用于货款尾数; ,用于小额货款; ,用于贸易从属费用; ,用于索赔款地提取;文档收集自网络,仅用于个人学习 第三部分:跟单托收(即付款交单(,)) 一、跟单托收定义: 跟单托收即付款交单.在国际贸易中使用托收方式结算货款时,通常使用跟单托收,即以票据随附商业单据委托银行代为收款;文档收集自网络,仅用于个人学习 二、跟单托收种类: ,即期付款交单; ,远期付款交单; ,承兑交单; 三、跟单托收即期付款交单程序: ,出口方(委托人)装货后,将货运单据(有时随附即期汇票)、托收申请交“托收行”; ,“托收行“寄交“代收行”托收委托书连同货运单据(有时随附即期汇票); ,“代收行”提示单据(有时随附即时汇票); ,“付款人”审单无误后付款; ,“代收行”交单; ,代收行办理转帐并通知托收行款已收妥; ,托收行交款; 在即期付款交单地情况下,可以作出口押汇,即在第一步托收行扣除利息和手续费后垫付货款给委托人,然后履行第步,第七步取消;文档收集自网络,仅用于个人学习 四、跟单托收远期付款交单程序: ,出口方装货后,填写托收申请,开立远期汇票连同货运单据交托收行; ,托收行寄交托收委托书、单据及汇票; ,代收行提示远期汇票和单据; ,付款人审单无误后承兑远期汇票; ,进口方到期付款; ,代收行交单; ,代收行办理转帐,并通知托收行款已收到; ,托收行向出口方交款;

关于全脑速读记忆法的训练步骤

关于全脑速读记忆法的训练步骤 : 眼睛的灵活度训练 全脑速读记忆法怎么训练才好全脑速读记忆训练注意事项 包括上下动作左右动作顺时针和逆时针方向旋转。 注意力的集中训练 其目的是为了在眼睛停顿的一瞬间能够有效地把握住文字信息杜绝视而不见。方法很简单在一张白纸上画一黑点其大小相当于一个字大小。然后注视它眼睛与图相距约40厘米。要求注视一分钟暗示自己黑点扩大了清晰入目。要做到尽量不眨眼能练到眼睛一眨不眨的注视此黑点的时候就换用小一点的黑点继续训练。 视点左右移动 方法是找一页32开的书字号尽量大一点的排版稀疏一点的。视点从每行开头的字迅速跳到每行末尾的字。每次一页书。练习时头不要跟着眼睛运动。每次练习一分钟。 视点头尾快速转换 选择和上一个步骤相同要求的书视点从每行末尾的字迅速跳到下一行开头的字。其余的方法都和上一步一样。 视点灵活度练习 这是为面式阅读打基础的。比如8字运动蛇形扫视运动等可以自己画出一些轨迹练习。要求眼睛流畅自如。

视读野扩大练习 就是常说的用眼睛的余光看字。这是眼睛训练里最困难的一步。其要求是以一目一句阅读时眼睛盯住一句的中心余光能看清这一句的文字;一行为单位阅读的时候眼睛盯住一行的中心余光能看清这一行的文字;以段落为单位阅读的时候眼睛盯住一段的中心余光能看清这一段的文字。 全脑速读记忆训练注意事项 在学习全脑速读过程中最重要和最必须的是克服传统阅读中的毛病和不良习惯。一般说来全脑速读有五忌: 在阅读时忌边看边读 如你阅读中发声就增加了口读和耳听的步骤。试想你读一本书籍将要花多少唇舌和多长的耳朵呵! 在阅读时忌视野狭窄 在传统阅读中往往是眼睛顺着书本逐字读使眼睛不断处于转动停顿的交替中。全脑阅读应成功地记住整段整行甚至整篇的意思而不是局限于某个字的字义。因此快速阅读时的视线应和书页垂直并采用从上向下看的方法。 在阅读时忌反复浏览 在传统阅读中往往有的人在读了一字半句之后又反复回头看一遍这很费时间。科技书刊的快速阅读只需完整地读一遍抓住所需资料过滤进入大脑。只容许在全书(篇)看完之后有必要时再重复细读某些章节中间不要反复停顿。

写出精彩作文:细节描写训练

作文细节描写写作训练 原句:这次上去写会是什么结果呢?我坐在椅子上,想了又想,心里很紧张,犹豫了很久,终于走上了讲台…… 添加细节句:这次上去写会是什么结果呢?我坐在椅子上,双脚发抖,手也冰凉冰凉的,这使我感到很不舒服,不停地在椅子上挪动……又有两位同学上去改答案了,教室里出奇地安静。到底上不上去呢?我心里像揣了只小兔,怦怦地跳着。我又把脚伸直了压了压,几次想冲上去,可我能对班里权威人物的答案提出异议吗?我再一次在草稿纸上认真地计算了一遍,似乎真的找不出什么错误了。于是,心一横,“呼”地站起来,跺跺脚,对着手哈了几口气,迈离了座位……——摘自《脱下自卑的外衣》 细节描写淑女的吃相 她端起碗,挑了几根菜叶,慢慢地送到嘴边,害羞似的张开嘴巴,又迅速合上,极小幅度地嚼着食物。(原文) 她小心翼翼地端起碗,挑了几缕菜叶,慢慢地送到嘴边,害羞似的张开樱桃小嘴,又迅速合上,极小幅度地嚼着食物,还不停地用餐巾纸擦拭唇角的余油。(改文) 细节描写粗汉的吃相 他见菜齐后,便提起筷,端起碗,对着菜就是一夹,合着饭往嘴里送。又掺和了汤水,撑的两腮鼓鼓的。(原文) 他见菜端齐后,便忙提起筷,端起大碗,对着菜就是一夹,合着饭呼呼地往嘴里送。又掺和了汤水,撑的两腮鼓鼓的,还有一粒米粒挂在嘴角上。(改文) 名人谈细节 著名作家赵树理说过:“细致的作用在于给人以真实感,越细致越容易使人觉得像真的,从而使看了以后的印象更深刻。” 江苏何永康教授说过:从某种意义上说,一个好的细节描写顶得上千言万语。一两个生活细节描写是记叙文中亮点和得分点。 什么是细节描写? 细节描写 : 是指对文学作品中的人物、环境或事件的某一局部、某一特征、某一细微事实所作的具体、细致、深入的描写。 它是刻画人物性格、推进情节发展、表现生活环境的重要因素。它具体渗透在对人物、景物或场面的描写之中。 细节描写包括: 语言、外貌、神态、行为、心理、环境等细节描写。 细节描写的作用 1细节描写,传神的刻画出人物形象,给人以逼真形象之感。 2细节描写能推动故事情节的发展。 3可以成功传达出人物的内心世界,让人物血肉丰满,进而让人感受栩栩如生。 4细节描写深化了文章的主题。 细节描写的类型及运用 一、动作细节描写 原稿:《背影》 我看见他戴着黑布小帽,穿着黑布大马褂,深青布棉袍,艰难地穿过铁道。 修改稿:《背影》 我看见他戴着黑布小帽,穿着黑布大马褂,深青布棉袍,蹒跚地走到铁道边,慢慢探身下去,尚不大难。可是他穿过铁道,要爬上那边月台,就不容易了。他用两手攀着上面,两脚再向上缩;他肥胖的身子向左微倾,显出努力的样子。这时我看见他的背影,我的泪很快地流下来了。

细节描写写作训练

细节描写写作训练 写作佳苑 01-15 0855 细节描写写作训练 原句:这次上去写会是什么结果呢?我坐在椅子上,想了又想,心里很紧张,犹豫了很久,终于走上了讲台…… 添加细节句:这次上去写会是什么结果呢?我坐在椅子上,双脚发抖,手也冰凉冰凉的,这使我感到很不舒服,不停地在椅子上挪动……又有两位同学上去改答案了,教室里出奇地安静。到底上不上去呢?我心里像揣了只小兔,怦怦地跳着。我又把脚伸直了压了压,几次想冲上去,可我能对班里权威人物的答案提出异议吗?我再一次在草稿纸上认真地计算了一遍,似乎真的找不出什么错误了。于是,心一横,“呼”地站起来,跺跺脚,对着手哈了几口气,迈离了座位……——摘自《脱下自卑的外衣》 细节描写淑女的吃相 她端起碗,挑了几根菜叶,慢慢地送到嘴边,害羞似的张开嘴巴,又迅速合上,极小幅度地嚼着食物。(原文) 她小心翼翼地端起碗,挑了几缕菜叶,慢慢地送到嘴边,害羞似的张开樱桃小嘴,又迅速合上,极小幅度地嚼着食物,还不停地用餐巾纸擦拭唇角的余油。(改文) 细节描写粗汉的吃相 他见菜齐后,便提起筷,端起碗,对着菜就是一夹,合着饭往嘴里送。又掺和了汤水,撑的两腮鼓鼓的。(原文) 他见菜端齐后,便忙提起筷,端起大碗,对着菜就是一夹,合着饭呼呼地往嘴里送。又掺和了汤水,撑的两腮鼓鼓的,还有一粒米粒挂在嘴角上。(改文)

名人谈细节 著名作家赵树理说过:“细致的作用在于给人以真实感,越细致越容易使人觉得像真的,从而使看了以后的印象更深刻。” 江苏何永康教授说过从某种意义上说,一个好的细节描写顶得上千言万语。一两个生活细节描写是记叙文中亮点和得分点。 什么是细节描写? 细节描写是指对文学作品中的人物、环境或事件的某一局部、某一特征、某一细微事实所作的具体、细致、深入的描写。 它是刻画人物性格、推进情节发展、表现生活环境的重要因素。它具体渗透在对人物、景物或场面的描写之中。 细节描写包括: 语言、外貌、神态、行为、心理、环境等细节描写。 细节描写的作用 1细节描写,传神的刻画出人物形象,给人以逼真形象之感。 2细节描写能推动故事情节的发展。 3可以成功传达出人物的内心世界,让人物血肉丰满,进而让人感受栩栩如生。 4细节描写深化了文章的主题。 细节描写的类型及运用 一、动作细节描写 原稿:《背影》 我看见他戴着黑布小帽,穿着黑布大马褂,深青布棉袍,艰难地穿过铁道。 修改稿:《背影》 我看见他戴着黑布小帽,穿着黑布大马褂,深青布棉袍,蹒跚地走到铁道边,慢慢探身下去,尚不大难。可是他穿过铁道,要爬上那边月台,就不容易了。他用两手攀着上面,两脚再向上缩;他肥胖的身子向左微倾,显出努力的样子。这时我看见他的背影,我的泪很快地流下来了。 细节描写例子:爸爸气极了,一把把我从床上拖起来,我的眼泪就流出来了。爸爸左看右看,结果从桌上抄起鸡毛掸子倒来拿,藤鞭子在空中一抡,

VB之Collection--介绍+加入自定义+提高效率-----

VB之Collection---Collection集合 集合是方法将一系列相关的项构成组的一种方法。Visual Basic 中集合可用于跟踪很多事情,例如程序中加载的窗体(窗体集合),或者在窗体中的所有控件(控件集合)。 Visual Basic 提供的类属Collection 类可用来定义自己的集合。需要多少集合对象,就可以建立多少Collection 对象-即Collection 类的实例。还可使用集合对象作为自己的集合类和对象模型的基础,它将在本章后面的“创建自己的集合类”和“对象模型”中讨论。 例如,集合是跟踪多窗体的最好方法。在“创建用户界面”中的“多文档界面(MDI) 应用程序”里讨论用户可以打开任何数目文档窗口的应用程序。以下代码段演示如何使用集合对象的Add 方法,对用户建立的MDI 子窗体列表进行管理。该代码假定已经存在一个名为mdiDocument 的窗体,其MDIChild 属性设置为True。 '父MDIForm 中的模块级集合。 Public colDocuments As New Collection '建立新的MDI 子文档窗体的代码。 Private Sub mnuFileNew() Dim f As New mdiDocument Static intDocumentNumber As Integer intDocumentNumber = intDocumentNumber 1 '下面的语句创建窗体。 f.Caption = "Document" & intDocumentNumber '给集合添加对象引用。 colDocuments.Add f f.Show End Sub colDocuments 的作用象是内置窗体集合的一个子集,它只包含窗体mdiDocument 的一些实例。每添加一个新窗体,自动调节集合的大小。可使用For Each ... Next 在集合内进行迭代。如果赋予窗体一个可以检索的键,那么可提供一文本字符串作为Add 方法的第二个参数,如本节后面部分所述。 在变量colDocuments 的声明中,New 关键字导致当该变量第一次被引用时,在代码中创建集合对象。因为集合是类,而不是数据类型,所以必须建立集合实例,并且在变量中记录对该实例(对象)的引用。 象其它任何对象一样,当包含其引用的最后一个变量被设置成Nothing 或不可见时,Collection 对象将被撤消。它包含的所有对象引用将被释放。因此,变量colDocuments 在父MDIForm 中声明,于是它将存在于程序存活期中的整个过程。 注意如果使用集合来跟踪窗体,当窗体被卸载之后,应使用集合的Remove 方法从集合中删除该对象引用。只要对该窗体的引用仍然存在,就不能收回窗体使用的内存,并且Collection 对象保存的引用象对象变量中的引用一样完好。 集合对象的构成 Collection 对象将每一项存储于Variants 对象中。于是,能够添加到Collection 对象里的内容列表就和能够存储到Variants 中的内容列表是相同的。这包括标准数据类型、对象和数组-但不包括用户定义类型。 不管Variants 中存储的是什么,它都占16 字节,因此使用Collection 对象不如使用数组的效率高。然而,不能ReDim 一个Collection 对象,ReDim Collection 对象能够使代码更清楚、更容易维护。此外,集合对象按键能进行快速的查找,而数组却不能。

细节描写片段练习

细节描写片段练习 一、进球 他抢过球,转身一抛,把球抛进了篮筐里。 _______________________________________________________________________________ _______________________________________________________________________________ _______________________________________________________________________________ _______________________________________________________________________________ _______________________________________________________________________________ 二、吃辣椒 他拿起一根辣椒咬下去,辣得他晕头转向,他急忙找水喝。 _______________________________________________________________________________ _______________________________________________________________________________ _______________________________________________________________________________ _______________________________________________________________________________ _______________________________________________________________________________三、试卷发下来之后 老师把批好的试卷发了下来。在拿到试卷之前,我紧张得要命,就怕自己考砸了。试卷拿到手以后,我一看不及格,很是伤心。 _______________________________________________________________________________ _______________________________________________________________________________ _______________________________________________________________________________ _______________________________________________________________________________ _______________________________________________________________________________ _______________________________________________________________________________ 四、做错了题目 老师批评学生做错了题目,老师说:“你又做错了!”我无地自容。 要求:请同学们把老师批评学生做错了题目这个典型细节写得生动起来,要精心锤炼词语,巧妙运用修辞,善于想像联想,写一段片段作文。 _______________________________________________________________________________ _______________________________________________________________________________ _______________________________________________________________________________ _______________________________________________________________________________ _______________________________________________________________________________ _______________________________________________________________________________

全脑速读记忆的一般训练方法

现在整个大脑内存速度阅读训练有多种版本。但万变不离其宗,总结起来,不超过以下几个方面的更多: 答:眼部培训 对眼睛全脑速读记忆的要求非常严格,甚至有些苛刻。因为整个大脑记忆速读要判,行,段落或页面被理解为一个单位,所以眼睛是一系列相关的培训。否则,在初始阶段,到遇到了很大的障碍。认真开展对眼睛的培训是整个大脑记忆速读的基础。其中包括: 1.眼睛柔韧性训练。包括垂直移动,左和右的运动,顺时针和逆时针转动。 2.培训注意力集中在它的目的的眼睛是稍停片刻,有效地把握短信,消除“盲点”。该方法操作简单,画一个黑点在一张纸上,一个字大小的尺寸。然后看着它,眼睛和相距约40厘米的身影。要求看了一分钟后,暗示他扩大了黑点,清晰入目。要做到尽量不眨眼可以训练的黑点眼睛一眨不眨的注视,当切换到一个较小的黑点继续训练。 3.观点走动是找到这本书的第32页,尝试一点更大的字体大小,布局有点稀疏。视点快速跳转到这个词的每行的开始处的每个字线的末端。每次一本书。不按眼边练头部运动。每次运动1分钟 4.视点选择和头尾向快速转换书上的步骤,跳跃到视点的下一行的开始迅速从一个单词字符的每行的末端的相同要求。的方法的其余部分是相同的前一步骤 5.观点柔韧性练习。这是奠定脸上读的基础。例如,8字运动,蛇扫视运动,等等,都可以得出自己的做法有些轨道。要求眼睛自由流动。 6.视读练习扩大的领域。看这个词就是常说眼睛的那个角落。这是最困难的一步培训的眼球。其要求是,当朗读,他的眼睛盯在句子的中心,这句话可以看到文本的角落头;阅读单位,眼睛盯着中心线,余光可以看到这行文字;时间阅读的段落为单位,眼睛盯着中央部分,余光可以看到这部分的文字。由于本次培训不过关,很多人在快速阅读的初始阶段被卡住。许多速读先锋图表,以帮助设计了大量的实践,更多地使用电脑软件来协助。但效果牵强,这种努力是不是要小得多。这里有两个方面:第一,重视扩大,发现32开,眼睛盯在页面中心的书,文字的页面都收入眼底。反复练习。请注意,这是为了让你练扩大的关注。二是扩大视读,这是能看到的话有多少一目了然领域。是有效的方法有两种。一。卡练习:发现两个废弃的卡,有什么银行卡,购物卡可以阻止这个词两侧的线,他表现出一个词的中间。然后将卡移动到一边,露出的话,他的眼睛盯着字的中间,余光看到一个单词的所有方面。在后面看到,再两边移动,露出五个字,他的眼睛盯着字的中间,余光看到每个字的两侧。。。因此,逐步扩大,直到看到的话就行了。线看到相同的方法,以向上和向下移动卡,扩展在垂直方向,作为读取字段。B。绿点凝视法:发现第32页翻书,想象中的页面中间有一个绿点,把所有的注意力集中在虚绿点。控制自己的行为和耐力。然后,在保持绿点,第一 扩大视野向两侧,尽可能地看到文本的整行。然后,在同一时间,看两行,3行或更多行文字。每十分钟看。每晚睡前推荐练习三个月可以看到效果。 II。默读培训 默读是不是记住发音时读数,不能发出一个字,甚至发音。当阅读,我的脑海里并没有发音的愿望,也是读条。这就是常说的“一个依赖于理解。”只有加强默读,速读是可能的。他们的训练方法,现在也有很多。首先,击败了安全期避孕法就在眼前阅读某些拍被殴打的时候,从而抑制发音。拍可以选择自己熟悉的音

细节描写写作训练

细节描写写作训练 一、教学目标: 1、理解什么是“细节描写” 2、掌握人物、景物、生活等细节描写的写法 3、能运用细节描写写几段话 二、知识要点 1、什么是细节描写? 细节描写: 是指对文学作品中的人物、环境或事件的某一局部、某一特征、某一细微事实所作的具体、细致、深入的描写。它是刻画人物性格、推进情节发展、表现生活环境的重要因素。它具体渗透在对人物、景物或场面的描写之中。 2、细节描写包括: 语言、外貌、神态、行为、心理、环境等细节描写。 3、细节描写的作用 1)细节描写,传神的刻画出人物形象,给人以逼真形象之感。 2)细节描写能推动故事情节的发展。 3)可以成功传达出人物的内心世界,让人物血肉丰满,进而让人感受栩栩如生。4)细节描写深化了文章的主题。 4、运用细节描写应注意 a、细致观察事物。要使得描写生动形象,在观察事物过程中,我们要调动自己的各种感官,对事物作非常细致的观察。 b、选用典型细节。细节描写要能抓住典型细节,这样才更具有广泛性,有利于突出文章中心,从而给人留下更为深刻的印象。 c、精心锤炼词语。在细节描写中,我们要选择恰当的词语,以期以少胜多,乃至一字传神。 d、巧妙运用修辞。运用比喻、拟人、夸张等修辞格,可以增强语言的生动性,变抽象为具体,使无形变为有形。 三、感受细节 A、原句:这次上去写会是什么结果呢?我坐在椅子上,想了又想,心里很紧张,犹豫了很久,终于走上了讲台…… 添加细节句:这次上去写会是什么结果呢?我坐在椅子上,双脚发抖,手也冰凉冰凉的,这使我感到很不舒服,不停地在椅子上挪动……又有两位同学上去改答案了,教室里出奇地安静。到底上不上去呢?我心里像揣了只小兔,怦怦地跳着。我又把脚伸直了压了压,几次想冲上去,可我能对班里权威人物的答案提出异议吗?我再一次在草稿纸上认真地计算了一遍,似乎真的找不出什么错误了。于是,心一横,“呼”地站起来,跺跺脚,对着手哈了几口气,迈离了座位……——摘自《脱下自卑的外衣》

波动速读的6个训练方法(2)完整篇.doc

波动速读的6个训练方法(2) 之后我们用曼陀罗卡来进行残像训练。曼陀罗训练就是紧盯着曼陀罗卡,记住每个曼陀罗的形状和颜色,然后在记忆里再现的一种训练方法。如果紧盯着曼陀罗卡片看10-30秒(因人而异)钟,然后闭上眼睛,就能够在想象里面栩栩如生地再现曼陀罗的颜色和形状,这就证明你的右脑想象能力已经被慢慢开启了。如果继续做这种练习的话,很自然地就能开发出你的右脑想象能力。下面是曼陀罗卡练习的具体操作方法: (1)请连续盯着曼陀罗卡。 (2)看5秒后闭眼,尽量让残像都停留在脑海里,同时暗示自己在闭眼睛时让图像尽可能长时间地停留在眼前。睁开眼后,看卡片背面的黑白曼陀罗图像,并将它颜色回忆出来。 (3)训练的关键是要持续不断,至少也要用三个月,这种方法能激活右脑3D 图片训练 人的视觉实际上分为在左脑视觉和右脑视觉两种。左脑视觉属于三维视觉,即能看见肉眼所能见到的事或物,而右脑视觉则能够看到左脑视觉所无法看到的潜在内容。 经过视觉训练之后,你的眼睛便能看到普通的肉眼所无法见到的光和颜色,实现了这一步骤,你便可以进行波动速读了。 开拓右脑的视觉最重要的是要在阅读进程中使用软焦点的视觉方法。所谓软焦点,是指在阅读过程中不将视觉焦点集中于一点,而是尽量使焦点变得模糊、分散,通过这种训练,将你的肉眼所看到的映像转化为思维形象,从而在你的脑海中得以清晰显现。 直接输入到大脑,这种眼部肌肉运动方法的训练,也被称为心里视觉输入法。当然,这种方法并非十分容易地就能够被人们掌握,而要在一次又一次的训练的基础上才能实现,只有通过不断的努力才能使你具有从容的获得右脑视觉形象的能力。不仅如此,在经过一系列的进阶训练之后,才能做到即使不闭上眼睛

Collection类

Collection类Collection定义了集合框架的共性功能。1,添加 add(e); addAll(collection); 2,删除 remove(e); removeAll(collection); clear(); 3,判断。 contains(e); isEmpty(); 4,获取 iterator(); size(); 5,获取交集。 retainAll();

6,集合变数组。 toArray(); 7,迭代器 Iterator() 注: 1,add方法的参数类型是Object。以便于接收任意类型对象。 2,集合中存储的都是对象的引用(地址) Collection |--List:元素是有序的,元素可以重复。因为该集合体系有索引。 List: 特有方法。凡是可以操作角标的方法都是该体系特有的方法。增 add(index,element); addAll(index,Collection); 删

remove(index); 改 set(index,element); 查 get(index): subList(from,to); listIterator(); int indexOf(obj):获取指定元素的位置。 ListIterator listIterator(); List集合特有的迭代器。ListIterator是Iterator的子接口。Iterator it = al.iterator();//获取迭代器,用于取出集合中的元素。 1.while(it.hasNext()) { sop(it.next()); } */ 编程序时使用for 2.for(Iterator it = al.iterator(); it.hasNext() ; ) {

细节描写片段训练与赏析

几则细节描写仿写片段 ——邹韬奋《我的母亲》课堂教学收获点滴 夏日的夜晚,屋里的老式电风扇无力地吹着,在妈妈温柔的怀抱里,我渐渐地进入梦乡。突然,妈妈因为手麻,一个不小心,差点把我摔到地上,我朦胧中发现:妈妈的衣衫已湿透,额上的汗珠不停地往下落, ................................手中的扇子却一下也没停过.,我的心不禁一颤,便从妈妈身上下来,拿过妈妈手中的扇子,帮妈妈扇了起来,对妈妈说:“妈妈,让我来吧!”看着我妈妈笑了。——左启晨马路边的两排灯闪耀着橘黄色如太阳般温暖的光芒,刺骨的寒风呼啸着吹散 了这如太阳般的温暖。我坐在车后座,手紧紧环着妈 ...,嘴唇已经冻得发紫, .....妈的腰 牙齿也在打颤。隐隐约约地感到妈妈也在发抖。“下来吧,穿上我的外套,这样暖和些。”她的声音有些许的颤抖,我稍作犹豫,还是乖巧地下了车,披上她的 外套,她小心地帮我拉上拉链。我坐上车,把拉链拉开,自己紧紧地贴在她的背 .......... 上,外套裹住了我们两人的肩,我似乎在温暖的灯光中,看见了她欣慰 ..,幸 .................................地笑 福的笑容 ....。——严勇丽 母亲新买了一件衣服,让我穿着试试,我接过衣服,是一件格子长衬衫,十分厚实,显然是给我天冷时穿的,我穿上后,母亲见衣服太长,接过衣服,便拿 去缝纫机那儿给我改小。她额上的汗珠 ........,我心 ......往下流,手中的 .......缝纫机一刻也不停 里暗想:为我要穿衣服,累母亲工作不休,一丝愧疚涌入心田。母亲却对我说:“你先上去吧,我马上就好。”我躺在床上,横竖也睡不着,过了很长时间,母 亲才上来,我只见门开了一条小缝,她蹑手蹑脚地进来 .......... ........把.衣服放在我身边,才轻 轻地推开门离开 .......。——江忠毅 大约五六岁时,在一个冬日的夜晚,母亲与我坐在床上,母亲当时已经昏昏欲睡了,我却精神饱满,硬要母亲读故事给我听,母亲被我缠得没办法些,就随手拿起桌上的书读了起来,只记得约半个小时后,我才渐渐有了睡意,母亲的嗓 子已经吃不消,声音有些沙哑,但还在坚持着,我听 ............ ..着她沙哑的读书声心里不禁 涩涩 ..。第二天,母亲的嗓子疼痛难忍,只可惜那时我还小,没能体会母亲的感受……——许仇龙 半夜睡不着,起来喝水。看门外闪烁着微弱的光。轻轻地推开门,我蓦地愣住了:妈妈独自一人坐在厅堂里,凭借那微弱的光为我缝着沙包。之前,我想要,母亲就是不肯给我做。但是…… 她拿起针线,由于光线太暗,穿不进去。她抬起手朝着那感觉所剩不多的光 ............... 芒,眯着眼睛,尽力地穿着 ............。经过多次的尝试终于穿好了。她似乎很卖力的,放 下了一只手,开始一针一线地缝着。时钟滴答滴答的声响,随着我的眼泪默默流 ...................

1速读入门训练配图

入门训练是进行波动速读的基础 在波动速读之前要进行入门训练,入门训练包括这样几项: 1、视觉训练; 2、ESP(超感觉能力)训练; 3、右脑记忆训练。 这些训练是进行波动速读的基础,因而尤其重要。入门训练要选择尽可能安静的地点。为了不在训练过程中受到干扰,需要做一些准备——拔掉房间里的电话线,告诉家人不要在训练中突然过来说话等等。这些准备非常重要。不要让房间里面过热或者过冷,也不要让阳光直射房间,房间里面昏暗一些较好。训练时请避开吃得很饱和想要睡觉的时候。但是,如果对这些事情过于神经质的话反而会无法放松下来,不能达到适合右脑能力开发的身心状态。保持平静的心情来训练才是关键,所以请在力所能及的范围内调节环境。 视觉训练 七田式视觉训练包括一点凝视训练、眼睛训练、3d图片训练和残像训练,这四种训练都有助于提高阅读时视觉的深度和广度,通过这四种训练将培养你清晰地再现立体图像的能力。视觉训练是为帮助你训练出一双有着波动速读能力的眼睛而设计的。这项训练能帮助你在最短的时间内实现“原封不动地再现所看到事物”。请借助眼肌训练卡、3d图片、黄卡。3色卡片、图形卡片和曼陀罗卡片进行训练。 一点凝视训练 这个训练能够培养集中力,扩大视野。准备“一点凝视训练卡片”。这个训练要凝视一张中央印有3.5厘米直径的黑色圆形的打白色卡片。长时间凝视,在黑色圆形的位置出现比原来大得多的圆形。坚持每天练习,直到能看到 这样的大的圆形为止。

眼睛训练 阅读速度与眼部运动密切相关。波动速读要求必须能够进行右脑阅读,为此,正确的视读方法就变得尤为必要。下面介绍的眼睛训练能够改善眼球肌肉的机能。通常,我们眼睛的视野只集中于中心位置,离中心越远,我们所看的对象就越难进入视野。眼睛训练可改善眼球的机能,使视野变大,扩大可将瞬间看到的物体收入视网膜的范围,可以在速读时提高一眼读取内容信息的能力。 眼睛有6种眼肌:上直肌、下直肌、内直肌、外直肌、上斜肌、下斜肌。“贝茨理论”认为这6种眼肌共同作用,使映像正确成像于焦点。 训练这6种眼肌正确发挥作用,能够扩大睛视幅,培养“照相记忆”——一眼能够看到一整页书的内容并记忆下来的能力。 眼肌训练1:上下运动准备“上直肌、下直肌训练卡片”。

Collection和Map接口及其实现类总结

Collection和Map接口及其实现类总结 Collection接口 Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements)。一些Collection允许相同的元素而另一些不行。一些能排序而另一些不行。Java SDK不提供直接继承自Collection的类,Java SDK提供的类都是继承自Collection的“子接口”如List和Set。 所有实现Collection接口的类都必须提供两个标准的构造函数:无参数的构造函数用于创建一个空的Collection,有一个Collection参数的构造函数用于创建一个新的Collection,这个新的Collection与传入的Collection有相同的元素。后一个构造函数允许用户复制一个Collection。 如何遍历Collection中的每一个元素?不论Collection的实际类型如何,它都支持一个iterator()的方法,该方法返回一个迭代子,使用该迭代子即可逐一访问Collection中每一个元素。典型的用法如下: Iterator it=collection.iterator();//获得一个迭代子 while(it.hasNext()){ Object obj=it.next();//得到下一个元素 } 由Collection接口派生的两个接口仅为List和Set。 Collection ├List │├LinkedList │├ArrayList │└Vector │└Stack

└Set Map ├Hashtable ├HashMap └WeakHashMap List接口 List接口对Collection进行了简单的扩充,它的具体实现类常用的有ArrayList和LinkedList。你可以将任何东西放到一个List容器中,并在需要时从中取出。ArrayList从其命名中可以看出它是一种类似数组的形式进行存储,因此它的随机访问速度极快,而LinkedList的内部实现是链表,它适合于在链表中间需要频繁进行插入和删除操作。在具体应用时可以根据需要自由选择。前面说的Iterator只能对容器进行向前遍历,而ListIterator则继承了Iterator的思想,并提供了对List进行双向遍历的方法。 List是有序的Collection,使用此接口能够精确的控制每个元素插入的位置。用户能够使用索引(元素在List中的位置,类似于数组下标)来访问List中的元素,这类似于Java 的数组。 和下面要提到的Set不同,List允许有相同的元素。 除了具有Collection接口必备的iterator()方法外,List还提供一个listIterator ()方法,返回一个ListIterator接口,和标准的Iterator接口相比,ListIterator多了一些add()之类的方法,允许添加,删除,设定元素,还能向前或向后遍历。 实现List接口的常用类有LinkedList,ArrayList,Vector和Stack。 LinkedList类 LinkedList实现了List接口,允许null元素。此外LinkedList提供额外的get,remove,insert方法在LinkedList的首部或尾部。这些操作使LinkedList可被用作堆栈(stack),队列(queue)或双向队列(deque)。 注意LinkedList没有同步方法。如果多个线程同时访问一个List,则必须自己实现访问同步。一种解决方法是在创建List时构造一个同步的List: List list=Collections.synchronizedList(new LinkedList(…)); ArrayList类

作文专题训练之细节描写

作文专题训练之细节描写 教学目标: 知识与技能:通过赏析例文中一些精彩的细节描写片段,学习和仿用细节描写,并用于写作之中,感受细节描写的好处。 过程与方法:赏析富有情趣的细节描写,描写一些细节动作。 情感态度与价值观:培养的观察能力,引导学生善于观察、发现生活中的细节,形成积极的人生态度。 重点:学习细节描写,体会其作用。 难点:运用细节描写并能运用到写作之中。 课时安排: 两课时 教学过程: 一、导语 细节描写是文章中的花朵,要使花朵漂亮,就要进行细节描写。我们要用善于观察的眼睛,捕捉生活中的细节。如果用我们的眼睛,再用我们爱心去感受生活,我们生活的花朵同样回更加灿烂。如下面这段文字:“天边那一弯新月发出淡淡的清辉,静静地洒在阳台上。迷朦的月色下,那些白天里姹紫嫣红的花,青翠欲滴的叶,都显得暗淡多了。这时候,几朵刚开的昙花冰清玉洁,散发出缕缕清香,沁人心脾。啊!还有一朵正含苞欲放的蕾儿,会不会开呢?我端详了好一会儿,忽然间,花蕾动了一下……终于,花蕾尖上不知不觉裂开了一个小孔,接着,小孔缓缓地张开,然后花瓣一片片地逐渐舒展开来。那一片片花瓣象是水晶雕成的,连一条条花脉都看得清清楚楚;花心洁白柔嫩,花边透出了一层鹅黄。”作者对花作了详尽的描写,花的质地、气味、色彩、纹路,花蕾开放的整个过程,让人如临其境,写得细腻生动。从技巧上讲,细节描写是记叙文写作的第一步,也是美化记叙文语言的重要方法。 二:古诗激趣,聚焦细节 1、展示诗 约客//赵师秀 黄梅时节家家雨,青草池塘处处蛙。有约不来过夜半,闲敲棋子落灯花。 2、使诗词韵味无穷,摇曳多姿是什么?为什么? 析:“闲敲棋子落灯花”中“闲敲”这一细节,表达了诗歌主人公因约客不来夜过半的烦躁。 3、细节的内涵 从上面的赏析中我们不难体会到细节其传神之处,那么,什么叫细节描写呢? 细节描写是指抓住生活中的细微而又具体的典型情节,加以生动细致的描绘,它具体渗透在对人物、景物或场面描写之中。它是塑造人物,达到典型化的重要手段。 好的作品之所以能动人肺腑,精彩动人的细节描写是功不可没的。 三、怎样进行细节描写。 一)选择最佳的点进行细节描写 1、综合细描,第一步是选点。 选点的这个“点”应该是对中心有作用的“点”,只有“点”到位,才不至于跑题和偏题。比如以“母爱”为话题,我们选点可以是妈妈给自己加上一件外衣的动作点,可以是妈妈注视自己模样的状态点,可以是告诉自己如何做人的语言点等,其实,这个选点在某种意义上和选材相关,但不管选哪个点,都应该是表现“母爱”主题的。当然,不能正确选择“点”,我们将无法展开描述,当然也就面临着跑题和偏题的可能性了。因为“皮之不存,毛将焉附?” 而这个最能表现主题的“点”也正是我们在写作时需要特写和加以浓墨重彩着力渲染之处。那么,选择什么样的点进行细节描写才是最好的呢?

相关主题
文本预览
相关文档 最新文档