当前位置:文档之家› Application详解与用法

Application详解与用法

Application详解与用法
Application详解与用法

1:Application是什么?

Application和Activity,Service一样,是android框架的一个系统组件,当android程序启动时系统会创建一个application对象,用来存储系统的一些信息。通常我们是不需要指定一个Application的,这时系统会自动帮我们创建,如果需要创建自己的Application,也很简单创建一个类继承Application并在manifest的application标签中进行注册(只需要给Application标签增加个name属性把自己的Application的名字定入即可)。

android系统会为每个程序运行时创建一个Application类的对象且仅创建一个,所以Application可以说是单例(singleton)模式的一个类.且application对象的生命周期是整个程序中最长的,它的生命周期就等于这个程序的生命周期。因为它是全局的单例的,所以在不同的Activity,Service中获得的对象都是同一个对象。所以通过Application来进行一些,数据传递,数据共享等,数据缓存等操作。

2:通过Application传递数据

假如有一个Activity A, 跳转到Activity B ,并需要推荐一些数据,通常的作法是Intent.putExtra() 让Intent携带,或者有一个Bundle把信息加入Bundle让Intent推荐Bundle对象,实现传递。但这样作有一个问题在于,Intent和Bundle所能携带的数据类型都是一些基本的数据类型,如果想实现复杂的数据传递就比较麻烦了,通常需要实现Serializable或者Parcellable接口。这其实是Android的一种IPC数据传递的方法。如果我们的两个Activity在同一个进程当中为什么还要这么麻烦呢,只要把需要传递的对象的引用传递过去就可以了。基本思路是这样的。在Application中创建一个HashMap ,以字符串为索引,Object为value这样我们的HashMap就可以存储任何类型的对象了。在

Activity A中把需要传递的对象放入这个HashMap,然后通过Intent或者其它途经再把这索引的字符串传递给Activity B ,Activity B 就可以根据这个字符串在HashMap中取出这个对象了。只要再向下转个型,就实现了对象的传递。

3:Application数据缓存

我一般会习惯在application中建立两个HashMap一个用于数据的传递,一个用于缓存一些数据。比如有一个Activity需要从网站获取一些数据,获取完之后我们就可以把这个数据cache到Application 当中,当页面设置到其它Activity再回来的时候,就可以直接使用缓存好的数据了。但如果需要cache一些大量的数据,最好是cache一些(软引

用)SoftReference ,并把这些数据cache到本地rom上或者sd卡上。如果在application 中的缓存不存在,从本地缓存查找,如果本地缓存的数据也不存在再从网络上获取。

4:PitFalls(汉语:易犯的错误)

使用Application如果保存了一些不该保存的对象很容易导致内存泄漏。如果在Application的oncreate中执行比较耗时的操作,将直接影响的程序的启动时间。不些清理工作不能依靠onTerminate完成,因为android会尽量让你的程序一直运行,所以很有可能onTerminate不会被调用。

5:MemoryLeak

在Java中内存泄漏是只,某个(某些)对象已经不在被使用应该被gc所回收,但有一个对象持有这个对象的引用而阻止这个对象被回收。比如我们通常会这样创建一个View

TextView tv = new TextView(this);这里的this通常都是Activity。所以这个TextView就持有着这个Activity的引用。下面看张图(Google IO 2011 ppt中抄得)

通常情况下,当用户转动手机的时候,android会重新调用OnCreate()方法生成一个新的Activity,原来的Activity应该被GC所回收。但如果有个对象比如一个View的作用域超过了这个Activity(比如有一个static对象或者我们把这个View的引用放到了Application 当中),这时候原来的Activity将不能被GC所回收,Activity本身又持有很多对象的引用,所以整个Activity的内存被泄漏了。

备注:经常导致内存泄漏核心原因:keeping a long-lived reference to a Context.持有一个context的对象,从而gc不能回收。情况如下:

1.一个View的作用域超出了所在的Activity的作用域,比如一个static的View或者把一个View cache到了application当中etc

理解:内存:注意静态的数据和缓存中的数据;注意释放;

2.某些与View关联的Drawable的作用域超出了Activity的作用域。

3.Runnable对象:比如在一个Activity中启用了一个新线程去执行一个任务,在这期间这个Activity被系统回收了,但Runnalbe的任务还没有执行完毕并持有Activity的引用而泄漏,但这种泄漏一般来泄漏一段时间,只有Runnalbe的线程执行完闭,这个Activity 又可以被正常回收了。

4.内存类的对象作用域超出Activity的范围:比如定义了一个内存类来存储数据,又把这个

内存类的对象传给了其它Activity 或者Service等。因为内部类的对象会持有当前类的引用,所以也就持有了Context的引用。解决方法是如果不需要当前的引用把内部类写成static或者,把内部类抽取出来变成一个单独的类,或者把避免内部对象作用域超出Activity 的作用域。out Of Memery Error 在android中每一个程序所分到的内存大小是有限的,如果超过了这个数就会报Out Of Memory Error。android给程序分配的内存大小与手机硬件有关,以下是一些手机的数据:

G1:16M Droid:24 Nexus One:32M Xoom:48Ms

所以尽量把程序中的一些大的数据cache到本地文件。以免内存使用量超标。

记得数据传递完成之后,把存放在application的HashMap中的数据remove掉,以免发生内存的泄漏

6:生命周期:

onCreate 在创建应用程序时创建

onTerminate 当终止应用程序对象时调用,不保证一定被调用,当程序是被内核终止以便为其他应用程序释放资源,那

么将不会提醒,并且不调用应用程序的对象的onTerminate方法而直接终止进程

onLowMemory 当后台程序已经终止资源还匮乏时会调用这个方法。好的应用程序一般会在这个方法里面释放一些不必

要的资源来应付当后台程序已经终止,前台应用程序内存还不够时的情况。

onConfigurationChanged 配置改变时触发这个方法

备注:application 被杀死的情况分析:

为了决定在内存较低的时候杀掉哪个进程, Android会根据运行在这些进程内的组件及他们的状态把进程划分成一个”重要程度层次”. 其重要的程度按以下规则排序:

1:前端进程可以是一个持有运行在屏幕最前端并与用户交互的Activity的进程(onResume 方法被调用时),也可以是持有一个正在运行的IntentReceiver(也就是说他正在执行自己的onReceiveIntent方法)的进程. 在系统中, 只会有少数这样的进程, 并且除非内存已经低到不够这些进程运行, 否则系统不会主动杀掉这些进程. 这时, 设备通常已经达到了需要内存整理的状态, 所以杀掉这些进程是为了不让用户界面停止响应.

2:可视进程是持有一个被用户可见, 但没有显示在最前端(onPause方法被调用时) 的Activity的进程. 举例来说, 这种进程通常出现在一个前端Activity以一个对话框出现并保持前一个Activity可见时. 这种进程被系统认为是极其重要的, 并且通常不会被杀掉, 除非为了保持所有前端进程正常运行不得不杀掉这些可见进程.

3:服务进程是持有一个Service的进程, 该Service是由startService()方法启动的, 尽管这些进程用户不能直接看到, 但是通常他们做的工作用户是十分关注的(例如, 在后台播放mp3或是在后台下载上传文件), 所以, 除非为了保持所有的前端进程和可视进程正常运行外, 系统是不会杀掉服务进程的.

4:后台进程是持有一个不再被用户可见的Activity(onStop()方法被调用时)的进程. 这些进

程不会直接影响用户体验. 加入这些进程已经完整的,正确的完成了自己的生命周期(访问Activity查看更多细节), 系统会在为前三种进程释放内存时随时杀掉这些后台进程. 通常会有很多的后台进程在运行, 所以这些进程被存放在一个LRU列表中, 以保证在低内存的时候, 最近一个被用户看到的进程会被最后杀掉.

5:空进程是没有持有任何活动应用组件的进程. 保留这种进程的唯一理由是为了提供一种缓存机制, 缩短他的应用下次运行时的启动时间. 就其本身而言, 系统杀掉这些进程的目的是为了在这些空进程和底层的核心缓存之间平衡整个系统的资源.

当需要给一个进程分类的时候, 系统会在该进程中处于活动状态的所有组件里掉选一个重要等级最高作为分类依据. 查看Activity, Service,和IntentReceiver的文档, 了解每个组件在进程整个生命周期中的贡献. 每一个classes的文档详细描述他们在各自应用的生命周期中所起得作用.

7:application 的context

1、它描述的是一个应用程序环境的信息,即上下文。

2、该类是一个抽象(abstract class)类,Android提供了该抽象类的具体实现类(后面我们会讲到是ContextIml类)。

3、通过它我们可以获取应用程序的资源和类,也包括一些应用级别操作,例如:启动一个Activity,发送广播,接受Intent

信息等。。

用法详解:

英语常见虚拟语气最全总结

英语常见虚拟语气最全总结 一、初中英语虚拟语气 1.If I ____ a candle, I would light the world bright. A.am B.are C.be D.were 【答案】D 【解析】 试题分析:句意:如果我是一根蜡烛,我将点亮这个世界。if I were 如果我是…,were虚拟语气,be动词都用were,故选D 考点:if条件句的虚拟语气 点评:if条件句的虚拟语气,是中考要求掌握的知识点,分为三种情况: 表示与现在事实相反的情况,从句谓语动词用一般过去式(be用were),主句谓语动词 用should/would/could/might +do;2.表示与过去的事实相反的情况,从句谓语动词用过去完成时,主句谓语动词用should/would/could/might+have done;3.表将来的事实相反的情况,从句谓语动词用should+动词/did/were to do,主句谓语动词用should/would/could/might +do。 2.If I _______ you, I _______ go there. A.is; will B.is; would C.were; would D.was; will 【答案】C 【解析】本题考查虚拟语气,if引导的与现在事实相反的虚拟语气。从句用一般过去式,主句用过去将来时。句意:如果我是你的话,我会去那儿的。 1.57.---What would you do if you a million dollars? ---If I you, I’d g ive it to medical research. A.got, were B.win, am C.won, am D.get, were 【答案】A 【解析】本题是考查的虚拟语气,对于将来的假设,主句用过去将来时,从句用一般过去时,且be动词为were,故选A 2.58.What _____ you _____ if you had a million dollars? A.would, did B.will, do C.would, do D.will, did 【答案】C 【解析】本题是对于虚拟语气的特殊疑问句的考查,根据句子的结构,选C 3.I suggest that we Chinese people_______Chinese culture with love and joy everywhere we go. A.spread B.spreading C.to spread D.will spread 【答案】A 【解析】 【详解】 句意:我建议我们中国人无论走到哪里都要带着爱心和欢乐来传播中国文化, 考查动词suggest后跟虚拟语气。spread是动词原形;spreading是动名词;to spread是动

八大时态结构详解

八大时态结构及用法详解 一、一般现在时 标志:动词原形 期末英语必考八大时态结构及用法详解,初一、初二、初三均适用!1. 表示经常性或习惯性动作,常与表频度的时间状语连用: She often speaks English. I leave home for school at 7 every morning. 2. 表示现在的状态、特征、职业、能力、感觉等: He seems to feel a bit down today. He works as a driver. 3. 表示真理、客观存在、科学事实或用于格言警句中: Shanghai lies in the east of China. Columbus proved that the earth is round. Where there is a will, there is a way. 4. 表示现在瞬间的动作: Here comes the bus! 5. 表示将来 1) 表按规定、计划、安排将要发生的动作(仅限于某些表示“来、去、动、停、开始、结束、继续”等的趋向动词),可以与表示未来的时间状语搭配使用。常见的用法是:飞机、火车、轮船、汽车等定期定点运行的交通状况。如: The next train leaves at 3 o’clock this afternoon.

How often does the shuttle bus run? 2) 在时间和条件状语从句中常使用一般现在时表示将来发生的事情:When Bill comes (不用will come), ask him to wait for me. I shall go there tomorrow unless I’m too busy. 二、一般过去时 标志:动词过去式 期末英语必考八大时态结构及用法详解,初一、初二、初三均适用! *闭音节:元音字母a, e, i, o, u如果发字母本来的音则称为开音节,否则称为闭音节。 1. 表示过去某时所发生的动作或存在的状态,常与表示过去的时间状语连用(e.g. yesterday, this morning, just now, a moment ago, in May, last night / year / week, once upon a time, the other day, before …, when…, in the past等)。如: Jim rang you just now. Liu Ying was in America last year. 2. 表示过去经常或反复发生的动作,特别是used to do表达的句型,本身表示的就是过去常常。如: When I was a kid, I often played football in the street. She used to visit her mother once a week.

在Excel中If函数的使用方法

在Excel中If函数的使用方法 ▲在“成绩表”工作表中,在“等级”字段下用粘贴函数的if 函数将“英语”成绩小于60分的用“不及格”表示;60~89分的用“合格”表示;大于等于90分的用“优秀”表示。 ▼=IF(E7>=90,"优秀",IF(AND(E7>=60,E7<90),"合格",IF(E7<60,"不及格"))) ■高中同学遇到了一个在excel中的函数问题,我们探讨了一下,感觉还可以,基本上可以实现目前想要的结果,就是在excel 中把两列的数值进行对应,输入一个值就出来另外一个数值.这样的问题可以用if函数来解决的,通过if函数自然就可以看到结果.不过这样的if最多就7个,不能满足需要,我觉得通过计算机其他语言的学习,我完全可以用case语句,如果case语句用不了,不知道还能用什么语句了. D2小于等于50,D3小于等于1800便为"合格"反之为:"不合格",公式应该是输入? =if(and(d2<=50,d3<=1800),"合格","不合格") 在B1单元格编辑公式 =IF(A1>=500,"一级",IF(AND(A1>=450,A1<500),"二级","三级")) 回车确认即可。 可以用填充柄把B1中的公式向下复制到相应的单元格。 就这些语句就足够了. 只要掌握了他的语句格式,和他的语法,基本上就可以解决的.不

过excel中应该还有很多其他的功能和算法需要研究. 眼镜小熊的问题:我在学校里做成绩单,老班要求每一个人列出自己的追赶目标是谁,为了在成绩单里体现每个同学的追赶成功与否,要把同学本人的成绩与被追赶同学的成绩加以比较,再返回Yes或No。可是用手工一个个向单元格里制造函数太累了,谁能帮我想个一劳永逸的办法? 增加K列,显示追赶成功与否的结果(如上图所示),在K4中输入公式: =IF(ISNA(MATCH(J4,$B$4:$B$9,0)),"",IF(H4

现在完成时的用法讲解1

现在完成时的讲解 对所学时态的回顾,引入现在完成时 通过数轴来概括讲解所学的四个时态:一般现在时、现在进行时、一般过去时、一般将来时。 (导入)有时候,这4种时态还不能满足我们表达的需要。比如:表示“某人过去曾经做过某事”或者“某人做某事多久”,以上五种时态就派不上用场了。这时,我们可以用一种新的时态——现在完成时表示。同样也用数轴来表示一下。 taught will teech -------- ---------- -------- --------- ---------- ? —过去时now 垠时 is teaching fit在发生) -------- ---------- -------- --------- ---------- ? DOW 枉进行时 past two years (has taught) ------ --------------------------------------------- Two years ago 现在完成时now 一现在完成时的构成:主语+ have/has +过去分词 (过去分词:规则动词的过去分词构成与动词过去式相同;不规则动词需要特殊记忆。 eg」_ have taught English in this school since 1999. 二、否定式:主语+ haven' t/hasn' t +过去分词。 疑问式:Have /Has +主语+过去分词? 简略答语:Yes,主语+ have/has.肯定) No,主语+ haven' t/hasn' t.(否定) —Have you finished your work? —Yes,l have. 三现在完成时的含义之一表示过去发生或已经完成的动作对现在造成的影响或结果, 常与already/yet,just,never/ever, before, so far等连用。这些标志词可以表达这种含义 1.already意为“已经”,通常用于肯定句中,可放在助动词之后,过去分词之前,也可以放在句末。实例: 1)rve already read this book.我已经读过这本书了。 (“读”这一动作发生在过去,对现在造成的影响是“知道书中的内容”。) 2)rve washed my clothes already 我已经洗了衣服。 (洗衣服的动作已完成,其结果是“衣服冼干净了”。)

初中英语八大时态讲解及练习(全)

概念:经常、反复发生的动作或行为及现在的某种状况。 时间状语:always, usually, often, sometimes, every week (day, year, month…), once a week, on Sundays, etc. 基本结构:①be动词; ②行为动词 否定形式:①am/is/are+not; ②此时态的谓语动词若为行为动词,则在其前加don't,如主语为第三人称单数,则用doesn't,同时还原行为动词。 一般疑问句: ①把be动词放于句首; ②用助动词do提问,如主语为第三人称单数,则用does,同时,还原行为动词。在一般现在时中,当主语是第三人称单数时,谓语动词要用第三人称单数形式,即常在动词原形后加-s或-es。 一、人称代词he, she, it是第三人称单数。如: He likes watching TV. 他喜欢看电视。 She has lunch at twelve. 她十二点吃午餐。 It looks like a cat. 它看起来像只猫。(口诀:I用am,you用are,is用于她他它,单数名词用is,复数名词都用are) 二、单个人名、地名或称呼作主语;是第三人称单数。如: ①Han Mei looks like her mother. 韩梅看起来像她的母亲。 ②Beijing is in China. 北京在中国。③Uncle Wang often makes cakes. 王叔叔经常做蛋糕。 三、单数可数名词或"this / that / the+单数可数名词"作主语时,是第三人称单数。如: ①A horse is a useful animal. 马是有用的动物。 ②This book is yours. 这本书是你的。 四、不定代词someone, somebody, nobody, everything, something等及指示代词this, that 作主语时,是第三人称单数。如: ①Everyone is here. 大家到齐了。 ②There is something wrong with the watch. 这块手表有毛病。 五、不可数名词作主语时为第三人称单数。如: ①The milk is in the glass. 牛奶在玻璃杯里。 ②The bread is very small. 那面包很小。 六、当数字或字母作主语时,看作第三人称单数。如: ①"6" is a lucky number. "6"是个吉利数字。 【练习】 一、单选 1 Jenny ____ in an office. Her parents ____in a hospital. A work works B works work C work are working D is working work 2 One of the boys_____ a black hat. A have B there is C there are D has 3 We will go shopping if it____ tomorrow. A don't rain B didn't rain C doesn't rain D isn't rain

现在完成时的用法解析

Lead in 一般过去时导入:一般过去时的概念 一般过去时表示过去某个时间发生的动作或存在的状态。 I lost my pen.(过去时) I have lost my pen.(现在完成时) 过去时一般表示过去所发生的动作或存在的状态。“我把笔丢了”,说话人只是想告诉对方在过去的某一个时间里他的笔丢了,仅此而已。(仅仅是在陈诉过去的一个事实,与现在没有关系) New lesson 一.现在完成时的构成: 助动词have/has(not) +动词过去分词 She has turned on the lights. 肯定式:have/ has+过去分词 否定式:haven’t/hasn’t+过去分词 疑问式:把have/has 提到主语前面 肯定回答:Yes,…have/has 否定回答:No,…..haven’t/hasn’t 二.用法 1.表示过去发生的动作对现在造成的影响或结果. 例如:She has gone. 她走了. She went in the past.(She is not here

now.) I have just cleaned my hands. 我刚洗过手。(“洗手”是发生在过去的动作,对现在造成的结果是“手干净了”) I have closed the door. (The door is close now.) She has turned on the lights. (The lights are on now.) He has written his name on the blackboard. (The name is on the blackboard now.) Mother has cooked the dinner. (We can have dinner now.) You have seen the film. (You know what the film is about.) We have cleaned the classroom. (The classroom is clean now.) 2. 表示动作发生在过去,并且一直延续到现在,甚至还可能继续延续下去。这时常和since所引导的短语或从句或for引导的短语连用(for有时可以省去)。以及so far, by now, these days, in the last/past … years/days…等连用。 I have lived here for over ten years. (表示他现在还在这里居住,并且还有可能继续住下去)比较:I lived here ten years ago.(仅仅说明了他十年前在这里记住过的事实,不代表现在他还住在这里) He has studied here since 2006. 都用How long 提问,例: We have learned English for three years. We have learned English since three years ago.

高考英语虚拟语气知识点经典测试题及解析

高考英语虚拟语气知识点经典测试题及解析 一、选择题 1.I insisted he______ back the wallet to the lady, but he insisted he______it. A.handed; didn’t steal B.hand; hadn’t stolen C.hand; not steal D.handed; hadn’t stolen 2.Recent years have seen a growing increase in the emergence of cyber terms, without which our life _____ so colorful nowadays. A.won’t be B.hadn’t been C.wouldn’t be D.can’t be 3.This winter vacation, my family are going to visit the Great Wall, but I would rather we ________ to Shanghai Disneyland. A.go B.had gone C.would go D.went 4.The requirement of the government is that the citizens not set off fireworks from January 1, 2019 on. A.shall B.should C.can D.may 5.What do you think of the proposal that improvement ____ in the type of vacuum cleaner? A.be made B.will be made C.would be made D.has to be made 6.I wish I ________ an architect because then I ________ be able to design my own house. A.am, will be B.were, would C.will be, could D.was, could 7.How I wish I ______ my mouth before I shouted at my mum! A.shut B.have shut C.had shut D.would shut 8.That was not the first time he ____ us. I think it's high time we ____ strong actions against him. A.betrayed, take B.had betrayed, took C.has betrayed, took D.has betrayed, take 9.Studies show that historical barriers on women acceptance in organizational environments, the development of the company would already be way ahead. A.were it not for B.if there being no C.hadn't it been for D.if it is not for 10.The board thought it urgent that these files _____ right away. A.printed B.had been printed C.would been printed D.be printed 11.What a pity! Considering his ability and experience, he ___________ it better. A.need have done B.must have done C.can have done D.might have done 12.If penicillin available, many people from sickness or even small wounds in World WarⅡ.

初中英语八大时态总结

初中英语八大时态总结 一、一般现在时 具体情况(主要用于下面几情况) 1) 描述当前时间内经常出现、反复发生的动作或存在的状态。 在这种情景中,句子常带有表示频率的时间状语:always , everyday , often , once a week (month , year , etc.) , sometimes , seldom , usually等等,以表示句中的动作或状态是习惯性的、经常性的。例如: They raise ducks as a sideline .他们以养鸭为副业。 It seldom rains here .这儿很少下雨。 2)仅为了描述状态、性质、特征、能力等等。 这里的目的是为了"描述现阶段的动作或状态",其重点"不是强调动作发生的时间、或进行的状态"。例如: He can speak five foreign languages .他能说五种外语。 That is a beautiful city .那是座美丽的城市。 3) 陈述客观事实、客观真理。 顾名思义,客观的情况是"没有时间概念"的;也"不会在意动作进行的状态"。例如: The sun rises in the east .日出东方。 4) 根据英文语法规定,当主句的谓语动词是一般将来时,那么时间或条件状语从句的谓语动词只能用一般现在时来表示将来要发生的动作。例如: I'll tell him the news when he comes back. 他回来时,我将告诉他这个消息。 *【用于一般现在时的副词,除了上面提到的一些表示频率的以外,常见的还有:now, today , nowadays等等】 二、一般过去时 具体情况(主要用于下面几情况) 1.主要是用来描述在过去某个时候发生的动作或存在的状态。它也可以用来表示在过去某段时间里经常发生的习惯性动作。 例:I was very thin in my childhood. 2.一般过去时由谓语动词的过去式表示,也就是说动词词末要加-ed(除不规则动词外)。常和一般过去时连用的过去时间状语有:last night (week ,month , year , century , etc.) , yesterday , the day before yesterday , yesterday morning ( afternoon , evening ) , in 1999 , two hours ago ( one week ago , tree years ago , …)等等。 例:Did you meet yesterday? He left just now. 3.使用一般过去时,在某种意义上说就是要强调动作或状态发生或存在于过去的某个时候。"过去"的时间概念有两层意思:一是指"现在某个时间"以前的时间;二是指"说话、写文章的那个时间点"以前的时间 He got his driving license last month. 他上个月拿到了驾照。

IF函数的使用方法及操作实例

IF函数的使用方法及操作实例 分步阅读 IF函数:假设条件性的函数,即执行真假值的判断,根据逻辑计算的真假值,返回不同的结果。EXCEL中IF函数的使用非常广泛,特别是在单条件判断的时候,用好 IF函数可以帮我们完成很多功能。现结合具体的实例操作,进行说明:方法/步骤 1.一、IF函数的基本应用。 if(logical_test,value_if_true,value_if_false) IF是条件判断函数:=IF(测试条件,结果1,结果2),即如果满足“测试条件” 则显示“结果1”,如果不满足“测试条件”则显示“结果2”。 例一: 图1中,成绩结果60分以上(含60分)为及格,60分以下为不及格。执行IF 函数如下: 在C2单元格中输入:=IF(B2>=60,“及格”,“不及格”),再把此单元格格式往下拉动,即可。 注意:“及格”,“不及格”的双引号,要在英文输入法情况下输入的引号(" )。 如下图1。

2.二、IF函数的复杂应用。IF 函数条件带复合运算。 例二:股票佣金计算。在股票交易中,经常要考虑成本,而佣金占很大的成本。 佣金怎么计算?佣金:佣金费率最高千分之三,最低5元,不足5元,按5元收取。现在佣金费率以千分之三,运用IF函数进行计算。 图2中,红色单元格为佣金值。佣金 = 成交金额 * 佣金费率0.003 。在红色单元格D7中输入:=IF(D4*B7>=5,D4*B7,5) 就会自动计算佣金费。图 2.1为大于或等于5元时的情况,图2.2为不足5元时的情况,仍会显示5。 如下图2 3. 3 三、IF函数高级嵌套应用。

例三:IF函数嵌套运用。某公司销售提成的计算,销售额大于80万元(含80万),提成按40%计算;销售额为80-60万(含60万),提成按30%计算;销售额小于60万,提成按20%计算。计算方法:在C2单元格输入:=IF(B2>=800000,B2*0.4,IF(AND(B2<800000,B2>=600000),B2*0.3,IF(B2<600000,B2*0.2))) 如下图3。 END 注意事项 IF函数的嵌套,有几层IF条件,后面就有几个反括号。嵌套最多不要超过7层。

英语中现在完成时的基本用法讲解

英语中现在完成时的基本用法讲解 (含义:我对他有所了解了,现在能够谈谈他的情况了。 )Have you been to Paris?你去过巴黎吗?(含义:如果你去过,你可以谈谈巴黎的情况。 如果你没有去过,我建议你去看看,或者我现在给你介绍一下巴黎的情况。 )We have never heard of such a man.我们从来没有听说过这样的人。 (含义:因此我们对“他一无所知,你问我们也是白问。 )模仿造句:1.因此,我们以前参观莫斯科(Moscow)。 2.你弟弟去去印度(India)吗? 3.这些孩子从未用过电脑。 2.现在完成时,表示过去某种行为的结果对现在有直接的影响Tom has lost his pen.汤姆的钢笔已经丢了。 (含义:结果是现在没笔用,必须借一支笔,或者买一支笔。 )Dad, I have finished my homework.爸爸,我已经做完家庭作业了。 (含义:现在应该可以让我出去玩会或者看下电视了。 )He has gone to Hong Kong.他已经去香港了。 (含义:结果是他不在这里,你在这儿见不到他了。 )模仿造句:1.杰克已把铅笔弄断了。 2.妈,我已经吃过中饭了。 3.玛丽已经去广州了。 3.现在完成时,表示某经历的时间长度(一般用for引导的时间状

语)Mr. Smith has been in China for 10 years.史密斯先生在中国待过10年了。 (含义:他待的时间够长的了,他对中国的情况很熟了,或者他的中文自然讲得很棒了。 )Jane has stayed in Shanghai for 3 days.珍妮在上海待了两天。 (含义:珍妮待在上海的时间短,对这里的情况还很不熟悉,或者她不应该马上离开,应该多玩几天。 )I have taught English for 10 years.我已经教英语10年了。 (含义:我教英语的时间已经非常长了,有丰富的教学经验了。 )模仿造句:1.简(Jane)已经在杭州住了8年了。 2.我妈已经在这家公司工作20年了。 3.今天我已经练英语口语2个小时了。 本文作者:丹丹英语(公众号:英语语法学习)本文已获转载授权,版权归作者所有,如需转载,请联系原微信公众号“英语语法学习。

英语语法专项:虚拟语气用法详解及练习(附答案)

虚拟语气用法详解 一、条件句中的虚拟语气 1. 条件句中虚拟语气的形式 从句中提出一种与客观现实不相符或根本不可能存在的条件,主句会产生的一种不可能获得的结果。条件句中 的虚拟语气根据不同的时间有三种不同的形式。 2. 条件句中的虚拟语气的举例 (1) 将来时的条件句中的虚拟语气。如: If he should go to Qing Hua University, he would make full use of his time. 如果他要上清华大学的话,他就会充分 利用他的时间了。 If he were to come here, he would tell us about it. 如果他要来的话,他会通知我们一声。 (2) 现在时的条件句中的虚拟语气。如: If he were free, he would help us. 要是他有空的话,它会帮助我们的。 If he studied at this school, he would know you well. 如果他在这所学校学习的话,它会对你很熟悉。 (3) 过去时的条件句中的虚拟语气。如: If I had seen the film, I would have told you about it. 我如果看过这场电影,我会把电影内容告诉你了。 If I had got there earlier, I would have met Mr. Li. 如果我早点到那儿,我就会会到了李先生。 3. 运用条件句中的虚拟语气时,须注意的几个问题 (1) 当从句的主语为第三人称单数时,谓语动词若是系动词be 时,可用was 代替were。但在倒装虚拟结构及if I were you, as it were 中,只能用were。如: Were I ten years younger, I would study abroad. 要是我还年轻十岁的话,我会去国外学习。 If I were you, I would try my best to grasp the chance. 要是我是你的话,我要尽力抓住这次机会。 (2) 有时,虚拟条件句中,主、从句的动作若不是同时发生时,须区别对待。①从句的动作与过去事实相反,而主句的动 作与现在或现在正在发生的事实不符。如: If I had worked hard at school, I would be an engineer, too. 如果我在学校学习刻苦的话,我现在也会使工程师了 If they had informed us, we would not come here now. 如果他们通知过我们的话,我们现在就不会来这里了。

在Excel中If函数的使用方法

在Excel中If函数的使用方法 电脑资讯2007-10-15 16:58:46 阅读3614 评论0 字号:大中小订阅 ▲在“成绩表”工作表中,在“等级”字段下用粘贴函数的if函数将“英语”成绩小于60分的用“不及格”表示;60~89分的用“合格”表示;大于等于90分的用“优秀”表示。 ▼=IF(E7>=90,"优秀",IF(AND(E7>=60,E7<90),"合格",IF(E7<60,"不及格"))) ■高中同学遇到了一个在excel中的函数问题,我们探讨了一下,感觉还可以,基本上可以实现目前想要的结果,就是在excel中把两列的数值进行对应,输入一个值就出来另外一个数值.这样的问题可以用if函数来解决的,通过if函数自然就可以看到结果.不过这样的if最多就7个,不能满足需要,我觉得通过计算机其他语言的学习,我完全可以用case语句,如果case语句用不了,不知道还能用什么语句了. D2小于等于50,D3小于等于1800便为"合格"反之为:"不合格",公式应该是输入? =if(and(d2<=50,d3<=1800),"合格","不合格") 在B1单元格编辑公式 =IF(A1>=500,"一级",IF(AND(A1>=450,A1<500),"二级","三级")) 回车确认即可。 可以用填充柄把B1中的公式向下复制到相应的单元格。 就这些语句就足够了. 只要掌握了他的语句格式,和他的语法,基本上就可以解决的.不过excel中应该还有很多其他的功能和 算法需要研究. □在Excel中If函数的使用方法https://www.doczj.com/doc/1811496586.html,/question/15517131.html https://www.doczj.com/doc/1811496586.html,/qdike/blog/item/6f639f58c48be7de9c8204cb.html 回答眼镜小熊的问题:我在学校里做成绩单,老班要求每一个人列出自己的追赶目标是谁,为了在成绩单里体现每个同学的追赶成功与否,要把同学本人的成绩与被追赶同学的成绩加以比较,再返回Yes 或No。可是用手工一个个向单元格里制造函数太累了,谁能帮我想个一劳永逸的办法? 增加K列,显示追赶成功与否的结果(如上图所示),在K4中输入公式: =IF(ISNA(MATCH(J4,$B$4:$B$9,0)),"",IF(H4

现在完成时的用法讲解修订版

现在完成时的用法讲解集团标准化小组:[VVOPPT-JOPP28-JPPTL98-LOPPNN]

现在完成时的讲解 对所学时态的回顾,引入现在完成时 通过数轴来概括讲解所学的四个时态:一般现在时、现在进行时、一般过去时、一般将来时。 (导入)有时候,这4种时态还不能满足我们表达的需要。比如:表示“某人过去曾经做过某事”或者“某人做某事多久”,以上五种时态就派不上用场了。这时,我们可以用一种新的时态——现在完成时表示。同样也用数轴来表示一下。 一现在完成时的构成:主语 + have/has + 过去分词 (过去分词:规则动词的过去分词构成与动词过去式相同;不规则动词需要特殊记忆。 eg .I have taught English in this school since 1999. 二、否定式:主语 + haven’t/hasn’t + 过去分词。 疑问式: Have /Has + 主语 + 过去分词 简略答语: Yes, 主语 + have/has.(肯定) No, 主语 + haven’t/hasn’t.(否定) —Have you finished your work — Yes,I have. 三现在完成时的含义之一表示过去发生或已经完成的动作对现在造成的影响或结果, 常与already/yet,just,never/ever,before, so far等连用。这些标志词可以表达这种含义. 1.already意为“已经”,通常用于肯定句中,可放在助动词之后,过去分词之前,也可以放在句末。实例: 1)I've already read this book. 我已经读过这本书了。 (“读”这一动作发生在过去,对现在造成的影响是“知道书中的内容”。) 2)I've washed my clothes already.我已经洗了衣服。 (洗衣服的动作已完成,其结果是“衣服冼干净了”。) 注意:在表示吃惊或明知故问等感情色彩时,already也可用于(口语)疑问句中。实例:3)Have you met him already 你(真的)已经见过他了 2.yet用在疑问句中意为“已经”,用在否定句中意为“还”,常放在句末。实例:1)—Has he found his watch yet 他已经找到他的手表了吗 —No,not yet.不,还没有。

英语虚拟语气用法总结

英语虚拟语气用法总结 1、表示与现在事实相反的情况: 从句:主语+过去时 主句:主语+should/would/could/might+do eg: 1.If I were you,I would take an umbrella. 如果我是你,我会带把伞.(事实:我不可能是你) 2.If I knew his telephone number,I would tell you. 如果我知道他的电话号码,我就会告诉你.(事实:不知道) 2、表示与过去事实相反的情况 从句:主语+had+done 主句:主语+should/would/could/might+have done eg: 1. If I had got there earlier,I should/could have met her.如果我早到那儿,我就会见到她. (事实:去晚了) 2.If he had taken my advice,he would not have made such a mistake.如果他听我的劝告的话,就不会犯这样的错误了.(事实:没有听我的话) 3、表示对将来情况的主观推测 从句:主句 ①if+主语+were to do :①主语+should/would/could/might+do ②if+主语+did/were ②主语+should/would/could/might+do ③if+主语+should+do ③主语+should/would/could/might+do eg: 1.If he should come here tomorrow,I would talk to him.

初中英语必考-八大时态结构及用法详解

初中英语必考八大时态结构及用法详解 一.一般现在时 1. 概念:经常、反复发生的动作或行为及现在的某种状况。 2. 基本结构:①is/am/are;②do/does 否定形式:①am/is/are+not; ②此时态的谓语动词若为行为动词,则在其前加don't,如主语 为第三人称单数,则用doesn't,同时还原行为动词。 3. 一般疑问句: ①把is/am/are 动词放于句首; ②用助动词do 提问,如主语为第三人称单数,则用does,同时,还原行为动词。 4. 用法

1)经常性或习惯性的动作,常与表示频度的时间状语连用。 例如:I leave home for school at 7 every morning. 每天早上我七点离开家。 2)客观真理,客观存在,科学事实。 例如:The earth moves around the sun. 地球绕太阳转动。 Shanghai lies in the east ofChina. 上海位于中国东部。 3)表示格言或警句。 例如:Pride goes before a fall 骄者必败。 注意:此用法如果出现在宾语从句中,即使主句是过去时,从句谓语也要用一般现在时。 例如:Columbus proved that the earth is round. 哥伦布证实了地球是圆的。 4)现在时刻的状态、能力、性格、个性。 例如:I don't want so much. 我不要那么多。

Ann writes good English but does not speak well.安英语写得不错,讲的可不行。 5)一般现在时表示将来含义。 a. 下列动词come, go, arrive, leave, start, begin, return 的一般现在时可以表示将来,主要用 来表示在时间上已确定或安排好的事情。 例如:The train leaves at six tomorrow morning. 火车明天上午六点开。 When does the bus star? It stars in ten minutes. 汽车什么时候开?十分钟后。 b. 在时间或条件句中。 例如:When Bill comes (不是will come), ask him to wait for me. 比尔来后,让他等我。 I'll write to you as soon as I arrive there. 我到了那里,就写信给你。

实用英语虚拟语气的解析及其用法讲解

实用英语虚拟语气的解析及其用法讲解 在当前英语语法当中,有一些学生总结的几个难点语法,其中之一就是虚拟语气,怎样判断出句子使用了虚拟语气,是哪一种形式的虚拟语气是学生无法清楚掌握的难点。本文从虚拟语气的定义到各种形式都进行了详细的讲解和分析,并针对各种形式的用法都进行了分析和举例,讲解明白,以帮助学生们能更好地了解和掌握英语语法中这个难学的语言现象。 标签:英语虚拟语气;定义;用法;分析及举例 一、虚拟语气的定义(Subjunctive Mood) 在我们了解什么是虚拟语气前,大家首先要弄清楚英语的语气表达,也就是英语学习中我们都会用到哪些语气。英语中的语气(Mood)可以分为:1The Indicative Mood(陈述语气);2The Interrogative Mood(疑问语气);3The Imperative Mood(祈使语气);4The Subjunctive Mood(虚拟语气)4类。陈述、疑问、祈使语气在本文中就不再过多阐述。而我们在这里重点讲解虚拟语气。什么是虚拟语气呢?虚拟语气用来表示假想,而不表示客观存在的事实,所说的是一个条件,不一定是事实,或与事实相反。虚拟语气通过谓语动词的特殊形式来表示。虚拟语气表示说话者所说的话并非事实,或难以实现的,甚至表达相反的概念。另外表示主观愿望或表达某种强烈的感情时,也用虚拟语气。 二、虚拟语气的判断及用法 (一)if条件状语从句中虚拟语气的判断 if条件状语从句有真实条件句和非真实条件句。假设条件可以实现的句子为真实条件句,反之为非真实条件句,要用虚拟语气。其形式分为以下三种:1与过去事实相反的假设。结构为:从句的谓语动词用“had+过去分词”,主句用“should(would,could,might)+have+过去分词”。 2与现在事实相反的假设。结构为:从句的谓语动词用过去式,系动词用were,主句的谓语用“should(would,could,might)+动词原形”。 3与将来事实相反的假设。结构为:从句的谓语动词用“should(wereto)+动词原形”,主句用“should(would,could,might)+动词原形”。 (二)宾语从句中的虚拟语气 1wish后接宾语从句中的虚拟语气:根据从句的意义来判断 A:表示与现在和将来事实相反的愿望,从句谓语动词用过去时态。例如:

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