常常需要对activity的主题进行设置,下面我就将一些常用的属性总结一下,方便自己以后使用!~~~
1.以下是一个常用的style:
<?xml version="1.0" encoding="utf-8"?> <resources> <style name="CustomTheme"> <item name="android:windowNoTitle">true</item> <item name="windowFrame">@drawable/screen_frame</item> <item name="windowBackground">@drawable/screen_background_white</item> <item name="panelForegroundColor">#FF000000</item> <item name="panelBackgroundColor">#FFFFFFFF</item> <item name="panelTextColor">?panelForegroundColor</item> <item name="panelTextSize">14</item> <item name="menuItemTextColor">?panelTextColor</item> <item name="menuItemTextSize">?panelTextSize</item> </style> </resources>
注意:
用了@符号和?符号来应用资源。
@符号表明了我们应用的资源是前边定义过的(或者在前一个项目中或者在Android 框架中)。
?表明了我们引用的资源的值在当前的主题当中定义过。通过引用在<item>里边定义的名字可以做到(panelTextColor 用的颜色和panelForegroundColor中定义的一样 )。这中技巧只能用在XML资源当中。
例如:
<!-- Window attributes -->
<item name="windowBackground">@android:drawable/screen_background_dark</item>
<item name="windowFrame">@null</item>
<item name="windowNoTitle">false</item>
<item name="windowFullscreen">false</item>
<item name="windowIsFloating">false</item>
<item name="windowContentOverlay">@android:drawable/title_bar_shadow</item>
<item name="windowTitleStyle">@android:style/WindowTitle</item>
<item name="windowTitleSize">25dip</item>
<item name="windowTitleBackgroundStyle">@android:style/WindowTitleBackground</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Activity</item>
2.在主题中我们还可以设置页面的动画,属性如下:
Animation定义:
<!-- Standard animations for a full-screen window or activity. -->
<style name="Animation.Activity">
<item name="activityOpenEnterAnimation">@anim/activity_open_enter</item>
<item name="activityOpenExitAnimation">@anim/activity_open_exit</item>
<item name="activityCloseEnterAnimation">@anim/activity_close_enter</item>
<item name="activityCloseExitAnimation">@anim/activity_close_exit</item>
<item name="taskOpenEnterAnimation">@anim/activity_open_enter</item>
<item name="taskOpenExitAnimation">@anim/activity_open_exit</item>
<item name="taskCloseEnterAnimation">@anim/activity_close_enter</item>
<item name="taskCloseExitAnimation">@anim/activity_close_exit</item>
<item name="taskToFrontEnterAnimation">@anim/activity_open_enter</item>
<item name="taskToFrontExitAnimation">@anim/activity_open_exit</item>
<item name="taskToBackEnterAnimation">@anim/activity_close_enter</item>
<item name="taskToBackExitAnimation">@anim/activity_close_exit</item>
<item name="wallpaperOpenEnterAnimation">@anim/wallpaper_open_enter</item>
<item name="wallpaperOpenExitAnimation">@anim/wallpaper_open_exit</item>
<item name="wallpaperCloseEnterAnimation">@anim/wallpaper_close_enter</item>
<item name="wallpaperCloseExitAnimation">@anim/wallpaper_close_exit</item>
<item name="wallpaperIntraOpenEnterAnimation">@anim/wallpaper_intra_open_enter</item>
<item name="wallpaperIntraOpenExitAnimation">@anim/wallpaper_intra_open_exit</item>
<item name="wallpaperIntraCloseEnterAnimation">@anim/wallpaper_intra_close_enter</item>
<item name="wallpaperIntraCloseExitAnimation">@anim/wallpaper_intra_close_exit</item>
<item name="fragmentOpenEnterAnimation">@animator/fragment_open_enter</item>
<item name="fragmentOpenExitAnimation">@animator/fragment_open_exit</item>
<item name="fragmentCloseEnterAnimation">@animator/fragment_close_enter</item>
<item name="fragmentCloseExitAnimation">@animator/fragment_close_exit</item>
<item name="fragmentFadeEnterAnimation">@animator/fragment_fade_enter</item>
<item name="fragmentFadeExitAnimation">@animator/fragment_fade_exit</item>
</style>
3.一些系统的主题:
•
android:theme
=
"@android:style/Theme.Dialog"
将一个Activity显示为能话框模式
•android:theme
=
"@android:style/Theme.NoTitleBar"
不显示应用程序标题栏
•android:theme
=
"@android:style/Theme.NoTitleBar.Fullscreen"
不显示应用程序标题栏,并全屏
•android:theme
=
"Theme.Light"
背景为白色
•android:theme
=
"Theme.Light.NoTitleBar"
白色背景并无标题栏
•android:theme
=
"Theme.Light.NoTitleBar.Fullscreen"
白色背景,无标题栏,全屏
•android:theme
=
"Theme.Black"
背景黑色
•android:theme
=
"Theme.Black.NoTitleBar"
黑色背景并无标题栏
•android:theme
=
"Theme.Black.NoTitleBar.Fullscreen"
黑色背景,无标题栏,全屏
•android:theme
=
"Theme.Wallpaper"
用系统桌面为应用程序背景
•android:theme
=
"Theme.Wallpaper.NoTitleBar"
用系统桌面为应用程序背景,且无标题栏
•android:theme
=
"Theme.Wallpaper.NoTitleBar.Fullscreen"
用系统桌面为应用程序背景,无标题栏,全屏
•android:theme
=
"Translucent"
半透明
•android:theme
=
"Theme.Translucent.NoTitleBar"
半透明、无标题栏
•android:theme
=
"Theme.Translucent.NoTitleBar.Fullscreen"
半透明、无标题栏、全屏
•android:theme
=
"Theme.Panel"
•android:theme
=
"Theme.Light.Panel"
广州过春,天津过夏,北京过冬
外表并不光鲜,内心十足狂野,这就是——我
我叫陈振兴,今年22岁,出生于90年,是一个90后青年。我高中毕业,就来到天津参加迅腾国际软件培训。
迄今为止,阅历比较丰富。上学期间,从事过推销,服务员,群众演员,工作后专属程序员,技术支持、实施,到夜总会做过兼职。几乎这些都是出于我的好奇,结果在有限的两年时间里尝试过后,并且收获了。我能做什么,到底想做什么,真正喜欢什么,现在已有了答案。可能人家会说你平凡的跳槽,会对你以后的工作……我考虑过此事,正如之前所说,尝试后才知道我到底喜欢什么、适合什么,为此以后我都不会去涉足。显然,毕业都快两年的我,显然沧桑了些许。给予我最宝贵的财富,并不是刚毕业的1100元的工资到现在还是2000左右的微工资,而是那些与环境、人文碰撞后收获的思想。从他们身上我学到了太多太多的东西……但对于我以后的发展还远远不够。正因为如此,从放荡不羁的少年到意气奋发的青年,这才算是具备一个准IT职业者的身份。现在才能深刻体会到这才是属于自己真正的精神世界。
我曾一度挑战别人认为的那种叛逆,从学校到工作,似乎都是这样。高考过后一度放弃上学,而遭到所有人的“忠言逆耳”。我不去上学,是因为我当时并不知道自己想要什么,报考的专业也没有太大吸引我的理由,相反在我耳边萦绕的几乎全是“大学生出来能干什么?毕业找不到工作等等一系列的话语”,似乎当时的这种想法已经根深蒂固了,几乎谁的话都已听不进去了。就这样来到了天津,逃离所有束缚迎来一个陌生环境。现在才深深体会到那些无形的压力。从学校毕业有幸被第一家软件公司录取,在那里也收获了对这个行业的初步认识,对我以后在IT行业的这种潜移默化的影响似乎有种格外的情调。正如现在一样。而后,我离职了,为自己的年少轻狂付出了代价,但也收获了我初步的成熟。在那里结实了第一个领路人,他对我的帮助或者引导具有直接影响。一段时间后,我只记得他问过,“你想好了你以后要干什么了吗?想好后,给我回复”,说实话,我当时怎么知道自己想要什么。就这样,维持到现在。随即,被派遣到广州,做ERP推广实施,在那里我几乎发挥了我所有的能力,此刻我才感觉到在上学期间当班干部的这种能力凸显出来,培训,制定方案,沟通力得到相应的提高。接触了腾讯QQ的老工程师,询问了JAVA学习体系。我才真正的感觉到从学生到一个工作者的成功转型,对于能力的不同待遇也会相应的改变。内心填满的那种扩张感,几乎让我在以后的道路上没什么可畏惧的了。回来后,本来休息两天报到的,结果让我休息一周时间后,告诉我,“你的学历太低,我们公司目前没有相应的岗位适合你的”,当时听到这话,感觉很可笑……的确,这家企业15个博士后,其他的都是重点院校的……就这样莫名其妙的在医院打了2个多月的酱油,也学到了一些常识,医药,硬件,其实这些常识是我们应该所了解的。这几天内心颇不宁静……
对学历的看法:之前感觉学历并不怎么重要,到社会也是看的实力。其实我错了,当从第一家公司离职后,网上投的简历没有一个人回,而面试中人家谈及到学历,我的话语越来越表现的没有底气,直到对此产生了一种畏惧感。在年初找工作的我依旧无法权衡、平复,我试图想用各种方法消除这种萦绕心头的困惑,但却不了了之了。心态上的反复无常加剧了我成长的步伐,基于知识,社会经验有限,而又无法去平衡,身心疲惫。很凑巧,以这种身份去广州历练,我想,应该是上天对我的眷顾。之前的所有顾虑以迅雷不及掩耳之势逃之夭夭。当被专车送往车站的路上,看着车窗外一闪而逝绿荫的邂逅,内心世界的最深处所产生了一种莫名的感动,久久不能平息。我愿意亲自去尝试西方的教育史,成年后自立,目标明确一度崛起。感触太深了,外国教育,培养青年拥有自己特有的才能,自力更生,对比下来太多的区别,而自己在这种社会因素下无能为力。目前对自己的表现差强人意。
参加黑马训练营工作一年后,陆续会考察我报考哪个学校。本来我从广州回来就打算报考天津大学的软件工程专业,事与愿违……这次去黑马,我必须准备充分,蓄势待发,这才是我人生的高考。四个月的奢侈时间,对于我来说几乎没有比这更奢侈的了,打破自己对技术层面的瓶颈,挑战属于自己真正的工作。黑马承载了我最大的梦想与伴随的理想,为此乐死不疲!
匆匆4年已逝。我感觉到时间的紧迫感和自我危机感。现在黑马群里面,高手如云,为一个所喜爱的职业而聚集在这里,共同奋斗。在这里会交到一身的朋友或者知己,我想。因为这些,才聚集到这里。“死生有命富贵在天,与人恭而有礼,四海之类皆兄弟也!君子何患乎!”
对于java的认识:
往往在论坛上看到关于技术方面的指南,有种蠢蠢欲动的感觉,真想立马报名参加。心情比较焦灼,自己没有合理分配好自己的学习时间。似乎这也是我欲罢不能,无法左右的。只能经常保持我对开发的这种热度,这是值得欣慰的。毕竟自己现在又不是靠技术吃饭,尤其这次,感觉特别的憋屈,与此同时又不能把全部精力集中到学习上,产生强烈的碰撞,预留还是放弃。最起码我还是选择java,不管多么忙多么累,当敲出几行代码的时候,那么多酸楚全然不见了,有时候只有一个人默默地承受,感觉到孤独感。慎重的抉择后,如果不去实现,我会恨自己一辈子,无法原谅自己。因为他才是我最初的梦想……
Java几乎是零基础,当从培训机构毕业的那一瞬间java是什么?它能做什么?而自己会些什么?从那种模糊的观念下就开始工作了,一段时间又追求框架的应用,一段时间感觉基础太次而又盲目的补习,再一段时间似乎已悄悄离开了它。昨天,我们老大问我,“bean是什么意思?Jar是什么意思?”几乎傻眼了,还自认为已入java之门的我基础大部分已经掌握,其实自己就是这么菜的。哭笑不得的我厚着脸皮问人家,什么意思啊!“java就是在一个coffeed岛上收获灵感后设计出的一种语言,bean是豆子,没错,它就是javabean,类,单个类;jar顾名思义就是器皿,把所有的bean放在里面,俗称类库”。哦,恍然大悟,原来那些框架就是类库的集合,而类库中运用java底层完全封装了(内部类,局部类,静态访问),有点对整体结构稍微明白了一些。举一反三早已经是我学习当中不可或缺的一部分,其实这些都是我在真正学习java之前领悟的经验,刚才的问题大部分人知道其原意,但运用到实际当中后理解的那才是真正收获的。从一开始工作到现在,感觉自己还是较幸运的那种,能得到贵人的帮助和指导,才让我获益匪浅。从数据库到linux上的应用,企业级框架、软件也就肤浅的应用了。现在回想起来,混在这个行业才明白了一点点道理。
何为梦想、理想中放飞激情,正如“给我一双翅膀,席卷我整个内心世界的疯狂—蝴蝶效应”即便如此,淡然,笃定,去做一生永不后悔的事情。
学习计划我并不想多谈及此事,我几乎不会给自己强制性的计划,我感觉那没用。因为计划远远跟不上我的变化,这也是我身上最大的优点更胜者是缺点。极强的适应能力,随环境变化而制定短期计划或者为“长期”计划服务。因为我也不知道明天会在哪里,我不是那种随遇而安或者说混吃等死的那类人,这与我不会产生交集,那也是让我内心感到不安和惶恐的唯一坐标轴,让我尽快调整现状。
现在就是活在当下,未来会随着自己的梦而去完善,过去已经不复存在,只是我每段经历留下最美好的记忆便是思想的升华了,足以在我古稀花甲之年回味当时的奋斗史。
抖擞精神,清空杯子,准备上路,属于真正自己的那条路。黑马论坛这次的改版也是挺不错的,给予这次真正与心灵对话的机会,两年后第一次的总结,这种方式也是最好不过的了。
到自荐信完成的时候我也不知道用了多少时日,这应该是最切合我的初衷。
2012年8月25号,她,他,他们——之间的约定!
推荐:软件开发者薪资,http://www./other/1391128.html
一般的缓存都是以时间为过期条件,最近碰到业务,需要缓存在一个范围内,满了后,用新的替代旧的,这样就固定了缓存的容量,使容量可控;可能类似的缓存框架也有,但我自己写了个简单的程序来实现,以下的是算法测试程序,修改后可作为业务缓存使用;发出来请大家指正:
算法实现的业务为:
根据组名来进行缓存,方便管理,此方法可以在以cacheSize为一个圆上进行缓存和清除
算法始终清除年龄最老的缓存对象,然后将新的对象存入清除区域,如此循环
CacheInfoCacheTest测试类
import java.io.File; import java.io.Serializable; import java.util.HashMap; import java.util.Map; /** * @description CacheInfoCacheTest * @author * * @date 2012-9-6 */ public class CacheInfoCacheTest { private static Map cacheInfo = new HashMap(); public static void setGroup(String key, String groupName, int cacheSize, int clearSize) { boolean ifinit = true; CacheInfo info = (CacheInfo) cacheInfo.get(groupName); if (info == null) { //可以先从缓存中获取,如果没有,则证明groupName是第一次缓存 System.out.println("-----------get cacheInfo from file -------------"); if (info == null) { info = new CacheInfo(); cacheInfo.put(groupName, info); ifinit = false; } } if (cacheSize > 0) info.setCacheSize(cacheSize); if (clearSize > 0) info.setClearSize(clearSize); int curIndex = info.getCurIndex(); // 当前存入计数 if(ifinit) curIndex++; Map keys = info.getKeys(); if (keys != null && keys.containsValue(key)) { // 如果存在了,则直接覆盖 System.out.println("---------add override " + groupName + "--" + key + "--cache"); } else { // 如果不存在 Integer pos = info.getClearIndex(); // 缓存清除索引 Integer cacheCounter = info.getCacheCounter();// 缓存剩余计数 //set(groupName + File.separator + key, serializable); System.out.println("---------add " + groupName + "--" + key + "--cache"); if (keys != null && cacheCounter >= cacheSize) { clearSize = clearSize > cacheSize ? cacheSize : clearSize; for (int i = 0; i < clearSize; i++) { // 如果缓冲池已满,则填出clearSize的缓存 System.out.println("---------remove clearSize cache" + pos%cacheSize + ";key="+keys.get(groupName + pos % cacheSize)); pos++;// 用来保存清除的位置 cacheCounter--; // 用来计数缓存是否已满 } info.setClearIndex(pos % cacheSize); } if (keys == null) keys = new HashMap(); cacheCounter++; curIndex = curIndex % cacheSize; info.setCacheCounter(cacheCounter); info.setCurIndex(curIndex); keys.put(groupName+curIndex, key); info.setKeys(keys); System.out.println("put key=["+(groupName+curIndex)+","+key+"]"); System.out.println("put counter=["+groupName+","+curIndex+"]"); System.out.println("################################### #################################"); } } public static void main(String[] args){ for(int i=0;i<53;i++){ setGroup("key_"+i,"group",20,8); } } }
CacheInfo类:
package com.study.cache; import java.util.Map; /** * @description CacheInfo * @author * * @date 2012-9-6 */ public class CacheInfo implements java.io.Serializable{ private int cacheSize=20;// 初始缓存容量 private int clearSize=8;// 缓存满了以后,需要清除的容量 private Map keys; private String group; private int curIndex; //当前存入索引值 private int clearIndex;//缓存清除索引值 private int cacheCounter;//缓存剩余计数 public int getCacheSize() { return cacheSize; } public void setCacheSize(int cacheSize) { this.cacheSize = cacheSize; } public int getClearSize() { return clearSize; } public void setClearSize(int clearSize) { this.clearSize = clearSize; } public Map getKeys() { return keys; } public void setKeys(Map keys) { this.keys = keys; } public String getGroup() { return group; } public void setGroup(String group) { this.group = group; } public int getCurIndex() { return curIndex; } public void setCurIndex(int curIndex) { this.curIndex = curIndex; } public int getClearIndex() { return clearIndex; } public void setClearIndex(int clearIndex) { this.clearIndex = clearIndex; } public int getCacheCounter() { return cacheCounter; } public void setCacheCounter(int cacheCounter) { this.cacheCounter = cacheCounter; } }
运行结果:
-----------get cacheInfo from file -------------
---------add group--key_0--cache
put key=[group0,key_0]
put counter=[group,0]
####################################################################
---------add group--key_1--cache
put key=[group1,key_1]
put counter=[group,1]
####################################################################
---------add group--key_2--cache
put key=[group2,key_2]
put counter=[group,2]
####################################################################
---------add group--key_3--cache
put key=[group3,key_3]
put counter=[group,3]
####################################################################
---------add group--key_4--cache
put key=[group4,key_4]
put counter=[group,4]
####################################################################
---------add group--key_5--cache
put key=[group5,key_5]
put counter=[group,5]
####################################################################
---------add group--key_6--cache
put key=[group6,key_6]
put counter=[group,6]
####################################################################
---------add group--key_7--cache
put key=[group7,key_7]
put counter=[group,7]
####################################################################
---------add group--key_8--cache
put key=[group8,key_8]
put counter=[group,8]
####################################################################
---------add group--key_9--cache
put key=[group9,key_9]
put counter=[group,9]
####################################################################
---------add group--key_10--cache
put key=[group10,key_10]
put counter=[group,10]
####################################################################
---------add group--key_11--cache
put key=[group11,key_11]
put counter=[group,11]
####################################################################
---------add group--key_12--cache
put key=[group12,key_12]
put counter=[group,12]
####################################################################
---------add group--key_13--cache
put key=[group13,key_13]
put counter=[group,13]
####################################################################
---------add group--key_14--cache
put key=[group14,key_14]
put counter=[group,14]
####################################################################
---------add group--key_15--cache
put key=[group15,key_15]
put counter=[group,15]
####################################################################
---------add group--key_16--cache
put key=[group16,key_16]
put counter=[group,16]
####################################################################
---------add group--key_17--cache
put key=[group17,key_17]
put counter=[group,17]
####################################################################
---------add group--key_18--cache
put key=[group18,key_18]
put counter=[group,18]
####################################################################
---------add group--key_19--cache
put key=[group19,key_19]
put counter=[group,19]
####################################################################
---------add group--key_20--cache
---------remove clearSize cache0;key=key_0
---------remove clearSize cache1;key=key_1
---------remove clearSize cache2;key=key_2
---------remove clearSize cache3;key=key_3
---------remove clearSize cache4;key=key_4
---------remove clearSize cache5;key=key_5
---------remove clearSize cache6;key=key_6
---------remove clearSize cache7;key=key_7
put key=[group0,key_20]
put counter=[group,0]
####################################################################
---------add group--key_21--cache
put key=[group1,key_21]
put counter=[group,1]
####################################################################
---------add group--key_22--cache
put key=[group2,key_22]
put counter=[group,2]
####################################################################
---------add group--key_23--cache
put key=[group3,key_23]
put counter=[group,3]
####################################################################
---------add group--key_24--cache
put key=[group4,key_24]
put counter=[group,4]
####################################################################
---------add group--key_25--cache
put key=[group5,key_25]
put counter=[group,5]
####################################################################
---------add group--key_26--cache
put key=[group6,key_26]
put counter=[group,6]
####################################################################
---------add group--key_27--cache
put key=[group7,key_27]
put counter=[group,7]
####################################################################
---------add group--key_28--cache
---------remove clearSize cache8;key=key_8
---------remove clearSize cache9;key=key_9
---------remove clearSize cache10;key=key_10
---------remove clearSize cache11;key=key_11
---------remove clearSize cache12;key=key_12
---------remove clearSize cache13;key=key_13
---------remove clearSize cache14;key=key_14
---------remove clearSize cache15;key=key_15
put key=[group8,key_28]
put counter=[group,8]
####################################################################
---------add group--key_29--cache
put key=[group9,key_29]
put counter=[group,9]
####################################################################
---------add group--key_30--cache
put key=[group10,key_30]
put counter=[group,10]
####################################################################
---------add group--key_31--cache
put key=[group11,key_31]
put counter=[group,11]
####################################################################
---------add group--key_32--cache
put key=[group12,key_32]
put counter=[group,12]
####################################################################
---------add group--key_33--cache
put key=[group13,key_33]
put counter=[group,13]
####################################################################
---------add group--key_34--cache
put key=[group14,key_34]
put counter=[group,14]
####################################################################
---------add group--key_35--cache
put key=[group15,key_35]
put counter=[group,15]
####################################################################
---------add group--key_36--cache
---------remove clearSize cache16;key=key_16
---------remove clearSize cache17;key=key_17
---------remove clearSize cache18;key=key_18
---------remove clearSize cache19;key=key_19
---------remove clearSize cache0;key=key_20
---------remove clearSize cache1;key=key_21
---------remove clearSize cache2;key=key_22
---------remove clearSize cache3;key=key_23
put key=[group16,key_36]
put counter=[group,16]
####################################################################
---------add group--key_37--cache
put key=[group17,key_37]
put counter=[group,17]
####################################################################
---------add group--key_38--cache
put key=[group18,key_38]
put counter=[group,18]
####################################################################
---------add group--key_39--cache
put key=[group19,key_39]
put counter=[group,19]
####################################################################
---------add group--key_40--cache
put key=[group0,key_40]
put counter=[group,0]
####################################################################
---------add group--key_41--cache
put key=[group1,key_41]
put counter=[group,1]
####################################################################
---------add group--key_42--cache
put key=[group2,key_42]
put counter=[group,2]
####################################################################
---------add group--key_43--cache
put key=[group3,key_43]
put counter=[group,3]
####################################################################
---------add group--key_44--cache
---------remove clearSize cache4;key=key_24
---------remove clearSize cache5;key=key_25
---------remove clearSize cache6;key=key_26
---------remove clearSize cache7;key=key_27
---------remove clearSize cache8;key=key_28
---------remove clearSize cache9;key=key_29
---------remove clearSize cache10;key=key_30
---------remove clearSize cache11;key=key_31
put key=[group4,key_44]
put counter=[group,4]
####################################################################
---------add group--key_45--cache
put key=[group5,key_45]
put counter=[group,5]
####################################################################
---------add group--key_46--cache
put key=[group6,key_46]
put counter=[group,6]
####################################################################
---------add group--key_47--cache
put key=[group7,key_47]
put counter=[group,7]
####################################################################
---------add group--key_48--cache
put key=[group8,key_48]
put counter=[group,8]
####################################################################
---------add group--key_49--cache
put key=[group9,key_49]
put counter=[group,9]
####################################################################
---------add group--key_50--cache
put key=[group10,key_50]
put counter=[group,10]
####################################################################
---------add group--key_51--cache
put key=[group11,key_51]
put counter=[group,11]
####################################################################
---------add group--key_52--cache
---------remove clearSize cache12;key=key_32
---------remove clearSize cache13;key=key_33
---------remove clearSize cache14;key=key_34
---------remove clearSize cache15;key=key_35
---------remove clearSize cache16;key=key_36
---------remove clearSize cache17;key=key_37
---------remove clearSize cache18;key=key_38
---------remove clearSize cache19;key=key_39
put key=[group12,key_52]
put counter=[group,12]
####################################################################
说明:每满20,则从最先存入的那个对象开始,清除8个对象空间,供新的对象进行缓存;(最先对象是动态变化的), 抛砖引玉,希望有更好的算法!