<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">博客园_实现梦想与回忆的，叫做现在</title><subtitle type="text">Dict.CN 在线词典, 英语学习, 在线翻译  </subtitle><id>http://feed.cnblogs.com/blog/u/24602/rss</id><updated>2012-02-09T14:52:57Z</updated><author><name>Stanley.Luo</name><uri>http://www.cnblogs.com/vivid-stanley/</uri></author><generator>CNBlogs BlogServer</generator><link rel="alternate" type="text/html" href="http://www.cnblogs.com/vivid-stanley/"/><link rel="self" type="application/atom+xml" href="http://feed.cnblogs.com/blog/u/24602/rss"/><entry><id>http://www.cnblogs.com/vivid-stanley/archive/2012/02/09/2344661.html</id><title type="text">Android 学习笔记 34</title><summary type="text">回顾1. 加载模式 standard singleTop singleTask singleInstance onNewIntent() SingleTon 单实例设计模式 全局只有一个实例 1. 构造方法私有 2. 类内部创建实例 3. static方法获取实例 饱汉： 成员变量初始化 饿汉： (延迟加载)第一次使用的时候初始化 Lazy Loading ListView 不要重复发明轮子 复用 消除重复 延迟加载 2. 自定义OptionsMenu 详细分析被替换对象的特征 显示：Menu 隐藏：1. 再按Menu 2. Back 3. other 4. MenuItem 5....</summary><published>2012-02-09T14:53:00Z</published><updated>2012-02-09T14:53:00Z</updated><author><name>Stanley.Luo</name><uri>http://www.cnblogs.com/vivid-stanley/</uri></author><link rel="alternate" href="http://www.cnblogs.com/vivid-stanley/archive/2012/02/09/2344661.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/vivid-stanley/archive/2012/02/09/2344661.html"/><content type="html">&#xD;
 &#xD;
&lt;p&gt;回顾&lt;br /&gt;1. 加载模式&lt;br /&gt;&amp;nbsp;&amp;nbsp; standard&lt;br /&gt;&amp;nbsp;&amp;nbsp; singleTop&lt;br /&gt;&amp;nbsp;&amp;nbsp; singleTask&lt;br /&gt;&amp;nbsp;&amp;nbsp; singleInstance&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; onNewIntent()&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; SingleTon&lt;br /&gt;&amp;nbsp;&amp;nbsp; 单实例设计模式&lt;br /&gt;&amp;nbsp;&amp;nbsp; 全局只有一个实例&lt;br /&gt;&amp;nbsp;&amp;nbsp; 1. 构造方法私有&lt;br /&gt;&amp;nbsp;&amp;nbsp; 2. 类内部创建实例&lt;br /&gt;&amp;nbsp;&amp;nbsp; 3. static方法获取实例&lt;br /&gt;&amp;nbsp;&amp;nbsp; 饱汉： 成员变量初始化&lt;br /&gt;&amp;nbsp;&amp;nbsp; 饿汉： (延迟加载)第一次使用的时候初始化&lt;br /&gt;&amp;nbsp;&amp;nbsp; Lazy Loading&lt;br /&gt;&amp;nbsp;&amp;nbsp; ListView&lt;br /&gt;&amp;nbsp;&amp;nbsp; 不要重复发明轮子&lt;br /&gt;&amp;nbsp;&amp;nbsp; 复用 消除重复&lt;br /&gt;&amp;nbsp;&amp;nbsp; 延迟加载&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;2. 自定义OptionsMenu &lt;br /&gt;&amp;nbsp;&amp;nbsp; 详细分析被替换对象的特征 &lt;br /&gt;&amp;nbsp;&amp;nbsp; 显示：Menu&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; 隐藏：1. 再按Menu&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2. Back&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3. other&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4. MenuItem&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5. onPause() &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;3. 布局的标签和优化&lt;br /&gt;&amp;nbsp;&amp;nbsp; include &lt;br /&gt;&amp;nbsp;&amp;nbsp; merge&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; requestFocus&lt;br /&gt;&amp;nbsp;&amp;nbsp; viewstub&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;定制ProgressBar&amp;nbsp; &lt;br /&gt;1. 无尽&lt;br /&gt;实现方法：&lt;br /&gt;android:indeterminateDrawable="@drawable/progressbaranim"&lt;/p&gt;&lt;p&gt;1. 查找style的定义&lt;br /&gt;sdk\platforms\android-10\data\res&lt;br /&gt;\values\attrs.xml&amp;nbsp;&amp;nbsp; styles.xml&lt;br /&gt;&amp;nbsp;&amp;nbsp; 关键字：progressbar&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; 找到决定UI显示的属性&lt;br /&gt;&amp;lt;item name="android:indeterminateDrawable"&amp;gt;&lt;br /&gt;@android:drawable/progress_medium_white&amp;lt;/item&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/p&gt;&lt;p&gt;&lt;br /&gt;产品经理&amp;nbsp;&amp;nbsp;&amp;nbsp; 用户交互设计师&amp;nbsp; 研发 &lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;3. 有序广播&lt;br /&gt;&amp;nbsp;&amp;nbsp; 垃圾短信过滤&lt;br /&gt;&amp;nbsp;&amp;nbsp; 系统短信广播ACTION：&lt;br /&gt;android.provider.Telephony.&lt;br /&gt;&amp;nbsp;&amp;nbsp; SMS_RECEIVED&lt;br /&gt;声明权限：android.permission.RECEIVE_SMS &lt;br /&gt;&amp;nbsp;&amp;nbsp; 指定广播接收者的优先级&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;intent-filter android:priority=""&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; priority：值的范围：-1000~1000&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; 发送有序广播：&lt;br /&gt;&amp;nbsp;&amp;nbsp; sendOrderedBroadcast&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; 中止有序广播&lt;br /&gt;&amp;nbsp;&amp;nbsp; abortBroadcast();&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; IP拨号&lt;br /&gt;&amp;nbsp;&amp;nbsp; 获取数据：getResultData()&lt;br /&gt;&amp;nbsp;&amp;nbsp; 修改数据：setResultData(telnumber);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; 权限：&lt;br /&gt;&amp;nbsp;&amp;nbsp; android.permission.PROCESS_OUTGOING_CALLS&lt;br /&gt;&amp;nbsp;&amp;nbsp; Action：&lt;br /&gt;&amp;nbsp;&amp;nbsp; android.intent.action.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NEW_OUTGOING_CALL&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;4. WebView&lt;br /&gt;&amp;nbsp;&amp;nbsp; 是什么：是一个UI组件，是显示Html的组件，&lt;br /&gt;&amp;nbsp;&amp;nbsp; 使用了一个Html和js语法解析引擎&lt;br /&gt;&amp;nbsp;&amp;nbsp; Webkit是一个开源的html、js解析引擎&lt;br /&gt;&amp;nbsp;&amp;nbsp; iOS safari&lt;br /&gt;&amp;nbsp;&amp;nbsp; 搜狗&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; 好处：Android UI-&amp;gt; Htm&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 以用户体验品质为代价换时间&lt;br /&gt;&amp;nbsp;&amp;nbsp; HTML5 native app&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; 以web技术为基础跨移动平台的开发框架&lt;br /&gt;&amp;nbsp;&amp;nbsp; phonegap&lt;br /&gt;&amp;nbsp;&amp;nbsp; reexxx &lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; 如何使用：&lt;br /&gt;&amp;nbsp;&amp;nbsp; 1. 布局中添加Webview&lt;br /&gt;&amp;nbsp;&amp;nbsp; mWebView.loadUrl("&lt;a href="http://www.baidu.com/"&gt;http://www.baidu.com/&lt;/a&gt;"); &lt;br /&gt;&amp;nbsp;&amp;nbsp; 2. 点击链接时不启动系统浏览器&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; mWebView.setWebViewClient(new WebViewClient());&lt;br /&gt;&amp;nbsp;&amp;nbsp; 3. 浏览本地html文件&lt;br /&gt;&amp;nbsp;&amp;nbsp; mWebView.loadUrl(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "&lt;a href="http://www.cnblogs.com/vivid-stanley/admin/file:///android_asset/android.html"&gt;file:///android_asset/android.html&lt;/a&gt;");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; 4. 进度刷新&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mWebView.setWebChromeClient(new WebChromeClient()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;@Override&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;public void onProgressChanged(WebView view, int newProgress) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;mProgressBar.setProgress(newProgress);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; });&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5. LocalView和WebView数据交互&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Local -&amp;gt; WebView&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WebView -&amp;gt; Local&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6. 获得焦点&lt;br /&gt;&amp;nbsp;&amp;nbsp;mWebView.setOnTouchListener(new OnTouchListener() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;@Override&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;public boolean onTouch(View v, MotionEvent event) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;mWebView.requestFocus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;});&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;br /&gt;5. 横纵屏&lt;br /&gt;&amp;nbsp;&amp;nbsp; 横纵屏切换：&lt;br /&gt;&amp;nbsp;&amp;nbsp; 当前的Activity的成员变量的数据可能丢失&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; UI界面的数据不会丢失&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; 与UI无关的状态，需要持久化&lt;br /&gt;&amp;nbsp;&amp;nbsp; onStop() 存储&lt;br /&gt;&amp;nbsp;&amp;nbsp; onStart() 恢复 &lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; 处理屏幕改变&lt;br /&gt;&amp;nbsp;&amp;nbsp; 1. manifest指定方向&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; android:screenOrientation="portrait" &lt;br /&gt;&amp;nbsp;&amp;nbsp; 2. manifest指定配置改变&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; android:configChanges="orientation|keyboardHidden"&lt;br /&gt;&amp;nbsp;&amp;nbsp; 3. 覆写Activity中的onConfigurationChanged()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/p&gt;&lt;img src="http://www.cnblogs.com/vivid-stanley/aggbug/2344661.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/vivid-stanley/archive/2012/02/09/2344661.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/vivid-stanley/archive/2012/01/23/2328988.html</id><title type="text">Android 代码动态生成ProgressBar</title><summary type="text">ProgressBar pb = new ProgressBar(context, null, android.R.attr.progressBarStyleHorizontal);注意第三个参数就是指定style， 要不然显示不正确！</summary><published>2012-01-23T09:18:00Z</published><updated>2012-01-23T09:18:00Z</updated><author><name>Stanley.Luo</name><uri>http://www.cnblogs.com/vivid-stanley/</uri></author><link rel="alternate" href="http://www.cnblogs.com/vivid-stanley/archive/2012/01/23/2328988.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/vivid-stanley/archive/2012/01/23/2328988.html"/><content type="html">&lt;p&gt;ProgressBar pb = new ProgressBar(context, null, android.R.attr.progressBarStyleHorizontal);&lt;/p&gt;&#xD;
&lt;p&gt;注意第三个参数就是指定style， 要不然显示不正确！&lt;/p&gt;&lt;img src="http://www.cnblogs.com/vivid-stanley/aggbug/2328988.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/vivid-stanley/archive/2012/01/23/2328988.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/vivid-stanley/archive/2012/01/08/2316614.html</id><title type="text">在Linux中，用什么命令查看文件或目录的权限？</title><summary type="text">命令:ll 或者 ls -l解释，输出的格式如下-rwxr-xr-x 1 root wheel 430540 Dec 23 18:27 /bin/bash第一个字段 -rwxr-xr-x 包含该特殊文件的权限的符号表示。该字段中的首字符（-）指定该文件的类型，本例中它是一个常规文件。其它可能的首字符还有：“d”目录“l”符号链接“c”字符专门设备文件“b”块专门设备文件“p”先进先出“s”套接字该字段的其余部分由三个三元组字符组成。第一个三元字符组代表文件所有者的权限，第二个代表文件的组的权限，第三个代表所有其他用户的权限r 表示允许读（查看文件中的数据），w 表示允...</summary><published>2012-01-08T13:09:00Z</published><updated>2012-01-08T13:09:00Z</updated><author><name>Stanley.Luo</name><uri>http://www.cnblogs.com/vivid-stanley/</uri></author><link rel="alternate" href="http://www.cnblogs.com/vivid-stanley/archive/2012/01/08/2316614.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/vivid-stanley/archive/2012/01/08/2316614.html"/><content type="html">&lt;pre id="best-answer-content" &gt;命令:ll  或者 ls -l&#xD;
解释，输出的格式如下&#xD;
-rwxr-xr-x    1 root     wheel      430540 Dec 23 18:27 /bin/bash&#xD;
&#xD;
第一个字段 -rwxr-xr-x 包含该特殊文件的权限的符号表示。该字段中的首字符（-）指定该文件的类型，本例中它是一个常规文件。其它可能的首字符还有：&#xD;
&#xD;
&amp;#8220;d&amp;#8221;目录&#xD;
&#xD;
&amp;#8220;l&amp;#8221;符号链接&#xD;
&#xD;
&amp;#8220;c&amp;#8221;字符专门设备文件&#xD;
&#xD;
&amp;#8220;b&amp;#8221;块专门设备文件&#xD;
&#xD;
&amp;#8220;p&amp;#8221;先进先出&#xD;
&#xD;
&amp;#8220;s&amp;#8221;套接字&#xD;
该字段的其余部分由三个三元组字符组成。第一个三元字符组代表文件所有者的权限，第二个代表文件的组的权限，第三个代表所有其他用户的权限&#xD;
r 表示允许读（查看文件中的数据），w 表示允许写（修改文件以及删除），x 表示允许&amp;#8220;执行&amp;#8221;（运行程序）。&lt;/pre&gt;&lt;img src="http://www.cnblogs.com/vivid-stanley/aggbug/2316614.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/vivid-stanley/archive/2012/01/08/2316614.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/vivid-stanley/archive/2012/01/08/2316615.html</id><title type="text">Linux系统管理命令: 管理用户和文件权限</title><summary type="text">用户账户文件/etc/passwd 保存用户名称，宿主目录，登录Shell等基本信息/etc/shadow 保存用户密码 &amp;#216; 第一个字段 用户登录名 &amp;#216; 第二个字段 经过加密的用户密码字符串，或者密码占位符&amp;#216; 第三个字段 用户的UID号&amp;#216; 第四个字段 用户的GID号&amp;#216; 第五个字段 用户的全名，可写与用户相关的详细信息&amp;#216; 第六个字段 用户的宿主目录，用户登陆后使用的默认目录&amp;#216; 第七个字段 登录shell信息，用户完成登录后使用的Shell&amp;#216; 第一个字段 用户名&amp;#216; 第二个字段 使用MD5加密的密码字串信息，当</summary><published>2012-01-08T13:09:00Z</published><updated>2012-01-08T13:09:00Z</updated><author><name>Stanley.Luo</name><uri>http://www.cnblogs.com/vivid-stanley/</uri></author><link rel="alternate" href="http://www.cnblogs.com/vivid-stanley/archive/2012/01/08/2316615.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/vivid-stanley/archive/2012/01/08/2316615.html"/><content type="html">&lt;p&gt;用户账户文件&lt;/p&gt;&#xD;
&lt;p&gt;/etc/passwd&amp;nbsp; 保存用户名称，宿主目录，登录Shell等基本信息&lt;/p&gt;&#xD;
&lt;p&gt;/etc/shadow&amp;nbsp; 保存用户密码 &lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; 第一个字段&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 用户登录名 &lt;/p&gt;&#xD;
&lt;p&gt;&lt;br /&gt;&amp;#216;&amp;nbsp; 第二个字段&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 经过加密的用户密码字符串，或者密码占位符&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; 第三个字段&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 用户的UID号&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; 第四个字段&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 用户的GID号&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; 第五个字段&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 用户的全名，可写与用户相关的详细信息&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; 第六个字段&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 用户的宿主目录，用户登陆后使用的默认目录&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; 第七个字段&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 登录shell信息，用户完成登录后使用的Shell&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; 第一个字段&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 用户名&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; 第二个字段&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 使用MD5加密的密码字串信息，当为 * 或 ！！时表示此用户不能登录&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; 第三个字段&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 上次修改密码的时间，表示从1970年01月01日起到最近一次修改密&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 码时间隔天数&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; 第四个字段&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 密码最短有效天数，自本次修改密码后，必须至少经过多少天才能修&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 改，0表示不进行限制&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; 第五个字段&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 密码最长有效天数，自本次修改密码后，经过该天数后必须修改，99999，&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 表示不进行限制&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; 第六个字段&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 提前多少天提醒用户，口令将过期，默认为7天&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; 第七个字段&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 密码过期多少天后，禁用此用户&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; 第八个字段&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 账号失效时间，指定了用户作废的天数（从1970.1.1起），默认为空，表示永久可用&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; 第九个字段&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 保留字段，目前没有特定用途&lt;/p&gt;&#xD;
&lt;p&gt;添加用户账号（useradd）&lt;/p&gt;&#xD;
&lt;p&gt;useradd&amp;nbsp; [选项]&amp;nbsp; 用户名&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -u&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 指定用户的UID号，要求该UID号未被其他用户使用&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -d&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 指定用户的宿主目录位置&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -e&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 指定用户帐号失效时间，可使用YYYY-MM-DD的格式&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -g&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 指定用户的基本组名，或使用GID&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -G&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 指定用户的附加组名，或使用GID&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -M&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 不建立使用者目录，即使/etc/login.defs系统档设定要建立使用者目录&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -s&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 指定用户使用的shell&lt;/p&gt;&#xD;
&lt;p&gt;Passwd 命令-----为用户帐号设置密码&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -d&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 清空指定用户账户的密码，只使用用户名即可登录&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -l&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 锁定用户帐号&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -S&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 查看用户账户状态&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -u&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 解锁用户账号&lt;/p&gt;&#xD;
&lt;p&gt;usermod 命令------修改用户账号属性&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -u&amp;nbsp;&amp;nbsp;&amp;nbsp; 修改用户的UID号&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -d&amp;nbsp;&amp;nbsp;&amp;nbsp; 修改用户宿主目录位置&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -e&amp;nbsp;&amp;nbsp;&amp;nbsp; 修改用户账号失效时间&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -g&amp;nbsp;&amp;nbsp;&amp;nbsp; 修改用户的GID 号&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -G&amp;nbsp;&amp;nbsp;&amp;nbsp; 修改用户附加组名&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -M&amp;nbsp;&amp;nbsp;&amp;nbsp; 不为用户建立并初始化宿主目录&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -s&amp;nbsp;&amp;nbsp;&amp;nbsp; 修改用户的登录shell&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -l&amp;nbsp;&amp;nbsp;&amp;nbsp; 更改用户账号的登录名称&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -L&amp;nbsp;&amp;nbsp;&amp;nbsp; 锁定用户账号&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -U&amp;nbsp;&amp;nbsp;&amp;nbsp; 解锁用户帐号&lt;/p&gt;&#xD;
&lt;p&gt;userdel 命令------删除用户账号&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -r&amp;nbsp;&amp;nbsp;&amp;nbsp; 将该用户的宿主目录一并删除&lt;/p&gt;&#xD;
&lt;p&gt;用户账号的初始配置文件（优先级高）&lt;/p&gt;&#xD;
&lt;p&gt;.bash_logout&amp;nbsp;&amp;nbsp; 退出登录时被执行&lt;/p&gt;&#xD;
&lt;p&gt;.bash_profile&amp;nbsp; 用户每次登录时被执行&lt;/p&gt;&#xD;
&lt;p&gt;.bashrc&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 加载/bin/Bash程序时被执行&lt;/p&gt;&#xD;
&lt;p&gt;全局配置文件(为所有用户添加登录后运行的命令程序，自动设置变量等)&lt;/p&gt;&#xD;
&lt;p&gt;/etc/bashrc&amp;nbsp;&amp;nbsp; &lt;/p&gt;&#xD;
&lt;p&gt;/etc/profile&amp;nbsp; &lt;/p&gt;&#xD;
&lt;p&gt;组账号文件&lt;/p&gt;&#xD;
&lt;p&gt;/etc/group&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 保存主账号的基本信息&lt;/p&gt;&#xD;
&lt;p&gt;/etc/gshadow&amp;nbsp;&amp;nbsp; 加密密码字符串等信息&lt;/p&gt;&#xD;
&lt;p&gt;groupadd命令-------添加组账号&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -g&amp;nbsp;&amp;nbsp;&amp;nbsp; 指定GID号&lt;/p&gt;&#xD;
&lt;p&gt;gpasswd命令--------添加，删除组成员&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -a&amp;nbsp;&amp;nbsp;&amp;nbsp; 将用户加到某个组中&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -d&amp;nbsp;&amp;nbsp;&amp;nbsp; 将用户从某个组中删除&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; -M&amp;nbsp;&amp;nbsp;&amp;nbsp; 同时添加多个用户到组中。中间， 隔开&lt;/p&gt;&#xD;
&lt;p&gt;groupdel命令-------删除组账号&lt;/p&gt;&#xD;
&lt;p&gt;用户和组账号查询&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; Id&amp;nbsp;&amp;nbsp; 查看当前用户对应的基本组，附加组信息&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; Group命令-----查询某个用户账号所属的组&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; Finger命令-----查询用户账号的详细信息，以每行一条记录的形式查看当前登录到本机的所有用户账号的详细信息，&lt;/p&gt;&#xD;
&lt;p&gt;-l-----以多行显示方式查看指定用户的详细信息&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; Users、w、who命令------查询当前登录到主机的用户信息&lt;/p&gt;&#xD;
&lt;p&gt;Users&amp;nbsp;&amp;nbsp;&amp;nbsp; 仅列出用户信息&lt;/p&gt;&#xD;
&lt;p&gt;Who&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 列出用户名、终端、登录时间、来源地点等信息&lt;/p&gt;&#xD;
&lt;p&gt;W&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 列出用户名、终端。执行命令等各种统计信息&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;设置文件/目录的权限&lt;/p&gt;&#xD;
&lt;p&gt;权限&lt;br /&gt;&amp;nbsp;文件&lt;br /&gt;&amp;nbsp;目录&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp; r（4）&lt;br /&gt;&amp;nbsp;查看文件内容&lt;br /&gt;&amp;nbsp;查看目录内容（显示子目录、文件列表）&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp; w（2）&lt;br /&gt;&amp;nbsp;修改文件内容&lt;br /&gt;&amp;nbsp;修改目录内容（在目录中新建、移动、删除文件或子目录）&lt;br /&gt;&amp;nbsp;&lt;br /&gt;x （1）&lt;br /&gt;&amp;nbsp;执行该文件（程序或脚本）&lt;br /&gt;&amp;nbsp;执行cd命令进入或退出该目录&lt;br /&gt;&amp;nbsp;&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; chmod&amp;nbsp; [ugoa]&amp;nbsp; [+ - =] 文件或目录&lt;/p&gt;&#xD;
&lt;p&gt;&amp;#216;&amp;nbsp; chmod&amp;nbsp; nnn&amp;nbsp; 文件或目录&lt;/p&gt;&#xD;
&lt;p&gt;u&amp;nbsp;&amp;nbsp; 属主&lt;/p&gt;&#xD;
&lt;p&gt;g&amp;nbsp;&amp;nbsp; 属组&lt;/p&gt;&#xD;
&lt;p&gt;o&amp;nbsp;&amp;nbsp; 其他用户&lt;/p&gt;&#xD;
&lt;p&gt;a&amp;nbsp;&amp;nbsp; 所有用户&lt;/p&gt;&#xD;
&lt;p&gt;+&amp;nbsp;&amp;nbsp; 增加权限&lt;/p&gt;&#xD;
&lt;p&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 减少权限&lt;/p&gt;&#xD;
&lt;p&gt;=&amp;nbsp;&amp;nbsp; 设置对应的权限&lt;/p&gt;&#xD;
&lt;p&gt;设置文件/目录的归属&lt;/p&gt;&#xD;
&lt;p&gt;chown&amp;nbsp;&amp;nbsp; 属主[：[属组]]&amp;nbsp; 文件或目录&lt;/p&gt;&#xD;
&lt;p&gt;使用附加权限&lt;/p&gt;&#xD;
&lt;p&gt;SET 位权限&amp;#8212;&amp;#8212;多用于给可执行程序或脚本文件进行设置，执行文件被设置了SUID、SGID权限后，任何用户在执行该文件时，将获得该文件属主、属组账号对应的身份&lt;/p&gt;&#xD;
&lt;p&gt;chmod&amp;nbsp;&amp;nbsp; u+s&amp;nbsp;&amp;nbsp; &lt;/p&gt;&#xD;
&lt;p&gt;chmod&amp;nbsp;&amp;nbsp; g+s&amp;nbsp;&amp;nbsp; &lt;/p&gt;&#xD;
&lt;p&gt;粘滞位权限&amp;#8212;&amp;#8212;主要为目录设置特殊，当目录呗设置了粘滞位权限以后，即使用户对该目录有写入权限，也不能删除该目录中其他用户的文件数据&lt;/p&gt;&#xD;
&lt;p&gt;chmod&amp;nbsp; +t&amp;nbsp; &lt;/p&gt;&#xD;
&lt;p&gt;chmod&amp;nbsp; -t&lt;/p&gt;&#xD;
&lt;p&gt;chmod&amp;nbsp;&amp;nbsp; nnnn&amp;nbsp; (第一位数字改为1或0)如：chmod 1777 /opt&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;本篇文章来源于 Linux公社网站(www.linuxidc.com)&amp;nbsp; 原文链接：http://www.linuxidc.com/Linux/2010-08/28094.htm&lt;/p&gt;&lt;img src="http://www.cnblogs.com/vivid-stanley/aggbug/2316615.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/vivid-stanley/archive/2012/01/08/2316615.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/vivid-stanley/archive/2012/01/07/Android.html</id><title type="text">Android 用对话框样式显示Activity</title><summary type="text">大多数情况，Activity 默认都是占满全屏的。如果我们想显示成对话框的样子呢？方法很简单，只需要在AndroidManifest.xml 的配置里面加一个atrribute： android:theme=&amp;quot;@android:style/Theme.Dialog&amp;quot;即可：1&amp;lt;activity2android:name=&amp;quot;.ServerConfigDialogActivity&amp;quot;3android:label=&amp;quot;@string/app_name&amp;quot;4android:theme=&amp;quot;@android:style/Theme.Dia</summary><published>2012-01-07T06:52:00Z</published><updated>2012-01-07T06:52:00Z</updated><author><name>Stanley.Luo</name><uri>http://www.cnblogs.com/vivid-stanley/</uri></author><link rel="alternate" href="http://www.cnblogs.com/vivid-stanley/archive/2012/01/07/Android.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/vivid-stanley/archive/2012/01/07/Android.html"/><content type="html">&#xD;
&lt;p&gt;大多数情况，Activity 默认都是占满全屏的。如果我们想显示成对话框的样子呢？&lt;/p&gt;&#xD;
&lt;p&gt;&lt;img border="0" alt="" src="http://images.cnblogs.com/cnblogs_com/vivid-stanley/device-2012-01-07-144845.png" width="480" height="800" /&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;方法很简单，只需要在AndroidManifest.xml 的配置里面加一个atrribute：&amp;nbsp; &lt;font color="#ff0000"&gt;android:theme&lt;/font&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;="@android:style/Theme.Dialog"&lt;/span&gt;&amp;nbsp;即可：&lt;/p&gt;&#xD;
&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&#xD;
&lt;div&gt;&lt;span style="color: rgb(0, 128, 128);"&gt;&amp;nbsp;1&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;activity&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 128);"&gt;&amp;nbsp;2&lt;/span&gt;&amp;nbsp;&lt;span style="color: rgb(128, 0, 0);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;android:name&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;=".ServerConfigDialogActivity"&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 128);"&gt;&amp;nbsp;3&lt;/span&gt;&amp;nbsp;&lt;span style="color: rgb(255, 0, 0);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;android:label&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;="@string/app_name"&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 128);"&gt;&amp;nbsp;4&lt;/span&gt;&amp;nbsp;&lt;span style="color: rgb(255, 0, 0);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;android:theme&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;="@android:style/Theme.Dialog"&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 128, 128);"&gt;&amp;nbsp;5&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;intent-filter&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 128, 128);"&gt;&amp;nbsp;6&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;action&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 128);"&gt;&amp;nbsp;7&lt;/span&gt;&amp;nbsp;&lt;span style="color: rgb(128, 0, 0);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;android:name&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;="android.intent.action.MAIN"&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;/&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 128, 128);"&gt;&amp;nbsp;8&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;category&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 128, 128);"&gt;&amp;nbsp;9&lt;/span&gt;&amp;nbsp;&lt;span style="color: rgb(128, 0, 0);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;android:name&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;="android.intent.category.LAUNCHER"&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;/&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 128, 128);"&gt;10&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;intent-filter&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 128, 128);"&gt;11&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: rgb(128, 0, 0);"&gt;activity&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;扩展一下：&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;pre&gt;&lt;span style="color: rgb(0, 0, 0); font-weight: bold;"&gt;3.    如何将一个Activity设置成窗口的样式&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;简单你只需要设置 &lt;br /&gt;一下Activity的主题就可以了在AndroidManifest.xml 中定义 Activity的&lt;br /&gt;地方一句话： &lt;br /&gt;Xml代码&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;span&gt;android &lt;wbr&gt;&lt;/span&gt;&lt;span&gt;:theme&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;"@android:style/Theme.Dialog"&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;wbr&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;wbr&gt;&lt;/span&gt; &lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;android:theme&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;"@android:style/Theme.Dialog"&lt;/span&gt;&lt;span&gt;&amp;nbsp;&lt;wbr&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt; &lt;wbr&gt;&lt;/span&gt; &lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;br /&gt;这就使你的应用程序变成对话框的形式弹出来了，或者&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Xml代码&lt;br /&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;span&gt;android:theme&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;"@android:style/Theme.Translucent"&lt;/span&gt;&lt;span&gt; &lt;wbr&gt; &lt;br /&gt; &lt;wbr&gt;&lt;/span&gt; &lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt; &lt;wbr&gt;&lt;/span&gt; &lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;android:theme&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;"@android:style/Theme.Translucent"&lt;/span&gt;&lt;span&gt; &lt;wbr&gt; &lt;br /&gt; &lt;wbr&gt;&lt;/span&gt; &lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;就变成半透明的，[友情提示-.-]类似的这种activity的属性可以在android.R.styleable &lt;br /&gt;类的AndroidManifestActivity &lt;br /&gt;方法中看到，AndroidManifest.xml中所有元素的属性的介绍都可以参考这个类android.R.styleable&lt;/p&gt;&lt;p&gt;上面说的是属性名称，具体有什么值是在android.R.style中可以看到，比如这个"@android:style/Theme.Dialog" &lt;br /&gt;就对应于android.R.style.Theme_Dialog ,（'_'换成'.' &lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;  &#xD;
&lt;img src="http://www.cnblogs.com/vivid-stanley/aggbug/2315729.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/vivid-stanley/archive/2012/01/07/Android.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/vivid-stanley/archive/2011/11/27/2265408.html</id><title type="text">增量与迭代的区别</title><summary type="text">增量与迭代的区别</summary><published>2011-11-27T15:04:00Z</published><updated>2011-11-27T15:04:00Z</updated><author><name>Stanley.Luo</name><uri>http://www.cnblogs.com/vivid-stanley/</uri></author><link rel="alternate" href="http://www.cnblogs.com/vivid-stanley/archive/2011/11/27/2265408.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/vivid-stanley/archive/2011/11/27/2265408.html"/><content type="html">&lt;p&gt;有一次面试被问到， 我们以前开发项目用的什么开发方式，我说&amp;#8220;增量迭代式&amp;#8221;。然后他问，什么是增量迭代，增量就是迭代吗？他们一样嘛？&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;当时真是傻眼了，一直以为增量迭代是连在一起的，从来没有想过他们是不一样。今天网上找了一篇文章，解答了我心中的疑惑：&lt;/p&gt;&#xD;
&lt;p&gt;&lt;a href="http://www.uml.org.cn/SoftWareProcess/201003183.asp"&gt;http://www.uml.org.cn/SoftWareProcess/201003183.asp&lt;/a&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;span style="widows: 2; text-transform: none; text-indent: 0px; border-collapse: separate; font: medium 'Times New Roman'; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" &gt;&lt;span style="line-height: 20px; text-indent: 16px; font-family: 宋体; font-size: 12px; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px" &gt;迭代，就是在实现软件的每一功能时&lt;/span&gt;&lt;span style="line-height: 20px; text-indent: 16px; font-family: 宋体; color: red; font-size: 24pt; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px" &gt;&lt;strong&gt;反复求精&lt;/strong&gt;&lt;/span&gt;&lt;span style="line-height: 20px; text-indent: 16px; font-family: 宋体; font-size: 12px; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px" &gt;的过程，是提升软件质量的过程，是&lt;/span&gt;&lt;span style="line-height: 20px; text-indent: 16px; font-family: 宋体; color: red; font-size: 18pt; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px" &gt;&lt;strong&gt;从模糊到清晰&lt;/strong&gt;&lt;/span&gt;&lt;span style="line-height: 20px; text-indent: 16px; font-family: 宋体; font-size: 12px; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px" &gt;的过程；&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;span style="widows: 2; text-transform: none; text-indent: 0px; border-collapse: separate; font: medium 'Times New Roman'; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" &gt;&lt;span style="line-height: 20px; text-indent: 16px; font-family: 宋体; font-size: 12px; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px" &gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;span style="widows: 2; text-transform: none; text-indent: 0px; border-collapse: separate; font: medium 'Times New Roman'; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" &gt;&lt;span style="line-height: 20px; text-indent: 16px; font-family: 宋体; font-size: 12px; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px" &gt;而增量，则是强调软件在发布不同的版本时，每次都多发布一点点，是&lt;/span&gt;&lt;span style="line-height: 20px; text-indent: 16px; font-family: 宋体; color: red; font-size: 24pt; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px" &gt;&lt;strong&gt;软件功能数量渐增&lt;/strong&gt;&lt;/span&gt;&lt;span style="line-height: 20px; text-indent: 16px; font-family: 宋体; font-size: 12px; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px" &gt;地发布的过程。二者的对比如下图所示：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;img border="0" alt="" src="http://images.cnblogs.com/cnblogs_com/vivid-stanley/增量迭代.jpg" width="446" height="236" /&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/vivid-stanley/aggbug/2265408.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/vivid-stanley/archive/2011/11/27/2265408.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/vivid-stanley/archive/2011/11/27/2264790.html</id><title type="text">Java 当中ArrayList, Vector, LinkedList</title><summary type="text">ArrayList 不可以同步，Vector可以同步(synchonized)。ArrayList 性能上比Vector 优越一些；ArrayList, Vector 都是基于Array数组, 适合查询LinkedList 是基于Link链表，适合删除，增加，修改-----------------java 中 set map table list ~~的总结1.Collection List Set Map 区别记忆 这些都代表了Java中的集合，这里主要从其元素是否有序，是否可重复来进行区别记忆，以便恰当地使用，当然还存在同步方面的差异，见上一篇相关文章。有序否允许元素重复否Collecti</summary><published>2011-11-26T17:08:00Z</published><updated>2011-11-26T17:08:00Z</updated><author><name>Stanley.Luo</name><uri>http://www.cnblogs.com/vivid-stanley/</uri></author><link rel="alternate" href="http://www.cnblogs.com/vivid-stanley/archive/2011/11/27/2264790.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/vivid-stanley/archive/2011/11/27/2264790.html"/><content type="html">&lt;p&gt;ArrayList 不可以同步，Vector可以同步(synchonized)。ArrayList 性能上比Vector 优越一些；&lt;/p&gt;&#xD;
&lt;p&gt;ArrayList, Vector 都是基于Array数组, 适合查询&lt;/p&gt;&#xD;
&lt;p&gt;LinkedList 是基于Link链表，适合删除，增加，修改&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;-----------------&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left; margin: 12pt 0cm 6pt;background: white" align="left"&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #000000; font-size: 18pt"&gt;java &lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #000000; font-size: 18pt"&gt;中&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #000000; font-size: 18pt"&gt; set map table list ~~&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #000000; font-size: 18pt"&gt;的总结&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #b8b2ac; font-size: 18pt"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;1.&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #810081; font-size: 12pt"&gt;Collection List Set Map &lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #810081; font-size: 12pt"&gt;区别记忆&lt;/span&gt;&lt;/u&gt; &lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;这些都代表了&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: #525150; font-size: 12pt"&gt;Java&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;中的集合，这里主要从其元素是否有序，是否可重复来进行区别记忆，以便恰当地使用，当然还存在同步方面的差异，见上一篇相关文章。&lt;/span&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;table style="border-collapse: collapse" border="0" cellspacing="0" cellpadding="0"&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 110.15pt; padding-right: 5.4pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0cm" valign="top" width="147" colspan="2"&gt;&#xD;
&lt;p align="left"&gt;&lt;/p&gt;&lt;/td&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: #f0f0f0; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 183.7pt; padding-right: 5.4pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0cm" valign="top" width="245"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;有序否&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: #f0f0f0; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 132.25pt; padding-right: 5.4pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0cm" valign="top" width="176"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;允许元素重复否&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 110.15pt; padding-right: 5.4pt; border-top: #f0f0f0; border-right: windowtext 1pt solid; padding-top: 0cm" valign="top" width="147" colspan="2"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: #525150; font-size: 12pt"&gt;Collection&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: #f0f0f0; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 183.7pt; padding-right: 5.4pt; border-top: #f0f0f0; border-right: windowtext 1pt solid; padding-top: 0cm" valign="top" width="245"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;否&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: #f0f0f0; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 132.25pt; padding-right: 5.4pt; border-top: #f0f0f0; border-right: windowtext 1pt solid; padding-top: 0cm" valign="top" width="176"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;是&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 110.15pt; padding-right: 5.4pt; border-top: #f0f0f0; border-right: windowtext 1pt solid; padding-top: 0cm" valign="top" width="147" colspan="2"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: #525150; font-size: 12pt"&gt;List&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: #f0f0f0; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 183.7pt; padding-right: 5.4pt; border-top: #f0f0f0; border-right: windowtext 1pt solid; padding-top: 0cm" valign="top" width="245"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;是&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: #f0f0f0; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 132.25pt; padding-right: 5.4pt; border-top: #f0f0f0; border-right: windowtext 1pt solid; padding-top: 0cm" valign="top" width="176"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;是&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr style="height: 5.25pt"&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 41.75pt; padding-right: 5.4pt; height: 5.25pt; border-top: #f0f0f0; border-right: windowtext 1pt solid; padding-top: 0cm" rowspan="3" width="56"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: #525150; font-size: 12pt"&gt;Set&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: #f0f0f0; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 68.4pt; padding-right: 5.4pt; height: 5.25pt; border-top: #f0f0f0; border-right: windowtext 1pt solid; padding-top: 0cm" valign="top" width="91"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: #525150; font-size: 12pt"&gt;AbstractSet&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: #f0f0f0; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 183.7pt; padding-right: 5.4pt; height: 5.25pt; border-top: #f0f0f0; border-right: windowtext 1pt solid; padding-top: 0cm" rowspan="2" width="245"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;否&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: #f0f0f0; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 132.25pt; padding-right: 5.4pt; height: 5.25pt; border-top: #f0f0f0; border-right: windowtext 1pt solid; padding-top: 0cm" rowspan="3" width="176"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;否&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr style="height: 5.25pt"&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: #f0f0f0; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 68.4pt; padding-right: 5.4pt; height: 5.25pt; border-top: #f0f0f0; border-right: windowtext 1pt solid; padding-top: 0cm" valign="top" width="91"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: #525150; font-size: 12pt"&gt;HashSet&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr style="height: 5.25pt"&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: #f0f0f0; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 68.4pt; padding-right: 5.4pt; height: 5.25pt; border-top: #f0f0f0; border-right: windowtext 1pt solid; padding-top: 0cm" valign="top" width="91"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: #525150; font-size: 12pt"&gt;TreeSet&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: #f0f0f0; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 183.7pt; padding-right: 5.4pt; height: 5.25pt; border-top: #f0f0f0; border-right: windowtext 1pt solid; padding-top: 0cm" valign="top" width="245"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;是（用二叉树排序）&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr style="height: 5.25pt"&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 41.75pt; padding-right: 5.4pt; height: 5.25pt; border-top: #f0f0f0; border-right: windowtext 1pt solid; padding-top: 0cm" valign="top" rowspan="3" width="56"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: #525150; font-size: 12pt"&gt;Map&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: #f0f0f0; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 68.4pt; padding-right: 5.4pt; height: 5.25pt; border-top: #f0f0f0; border-right: windowtext 1pt solid; padding-top: 0cm" valign="top" width="91"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: #525150; font-size: 12pt"&gt;AbstractMap&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: #f0f0f0; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 183.7pt; padding-right: 5.4pt; height: 5.25pt; border-top: #f0f0f0; border-right: windowtext 1pt solid; padding-top: 0cm" rowspan="2" width="245"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;否&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: #f0f0f0; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 132.25pt; padding-right: 5.4pt; height: 5.25pt; border-top: #f0f0f0; border-right: windowtext 1pt solid; padding-top: 0cm" valign="top" rowspan="3" width="176"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;使用&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: #525150; font-size: 12pt"&gt;key-value&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;来映射和存储数据，&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: #525150; font-size: 12pt"&gt;Key&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;必须惟一，&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: #525150; font-size: 12pt"&gt;value&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;可以重复&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr style="height: 5.25pt"&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: #f0f0f0; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 68.4pt; padding-right: 5.4pt; height: 5.25pt; border-top: #f0f0f0; border-right: windowtext 1pt solid; padding-top: 0cm" valign="top" width="91"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: #525150; font-size: 12pt"&gt;HashMap&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr style="height: 5.25pt"&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: #f0f0f0; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 68.4pt; padding-right: 5.4pt; height: 5.25pt; border-top: #f0f0f0; border-right: windowtext 1pt solid; padding-top: 0cm" valign="top" width="91"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: #525150; font-size: 12pt"&gt;TreeMap&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&#xD;
&lt;td style="border-bottom: windowtext 1pt solid; border-left: #f0f0f0; padding-bottom: 0cm; background-color: transparent; padding-left: 5.4pt; width: 183.7pt; padding-right: 5.4pt; height: 5.25pt; border-top: #f0f0f0; border-right: windowtext 1pt solid; padding-top: 0cm" valign="top" width="245"&gt;&#xD;
&lt;p align="left"&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;是（用二叉树排序）&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;List&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;接口对&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Collection&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;进行了简单的扩充，它的具体实现类常用的有&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;ArrayList&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;和&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;LinkedList&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;。你可以将任何东西放到一个&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;List&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;容器中，并在需要时从中取出。&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;ArrayList&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;从其命名中可以看出它是一种类似数组的形式进行存储，因此它的随机访问速度极快，而&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;LinkedList&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;的内部实现是链表，它适合于在链表中间需要频繁进行插入和删除操作。在具体应用时可以根据需要自由选择。前面说的&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Iterator&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;只能对容器进行向前遍历，而&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;ListIterator&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;则继承了&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Iterator&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;的思想，并提供了对&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;List&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;进行双向遍历的方法。&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt; &lt;br /&gt;&lt;br /&gt;Set&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;接口也是&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Collection&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;的一种扩展，而与&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;List&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;不同的时，在&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Set&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;中的对象元素不能重复，也就是说你不能把同样的东西两次放入同一个&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Set&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;容器中。它的常用具体实现有&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;HashSet&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;和&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;TreeSet&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;类。&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;HashSet&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;能快速定位一个元素，但是你放到&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;HashSet&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;中的对象需要实现&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;hashCode()&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;方法，它使用了前面说过的哈希码的算法。而&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;TreeSet&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;则将放入其中的元素按序存放，这就要求你放入其中的对象是可排序的，这就用到了集合框架提供的另外两个实用类&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Comparable&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;和&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Comparator&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;。一个类是可排序的，它就应该实现&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Comparable&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;接口。有时多个类具有相同的排序算法，那就不需要在每分别重复定义相同的排序算法，只要实现&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Comparator&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;接口即可。集合框架中还有两个很实用的公用类：&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Collections&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;和&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Arrays&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;。&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Collections&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;提供了对一个&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Collection&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;容器进行诸如排序、复制、查找和填充等一些非常有用的方法，&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Arrays&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;则是对一个数组进行类似的操作。&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt; &lt;br /&gt;&lt;br /&gt;Map&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;是一种把键对象和值对象进行关联的容器，而一个值对象又可以是一个&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Map&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;，依次类推，这样就可形成一个多级映射。对于键对象来说，像&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Set&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;一样，一个&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Map&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;容器中的键对象不允许重复，这是为了保持查找结果的一致性&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;;&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;如果有两个键对象一样，那你想得到那个键对象所对应的值对象时就有问题了，可能你得到的并不是你想的那个值对象，结果会造成混乱，所以键的唯一性很重要，也是符合集合的性质的。当然在使用过程中，某个键所对应的值对象可能会发生变化，这时会按照最后一次修改的值对象与键对应。对于值对象则没有唯一性的要求。你可以将任意多个键都映射到一个值对象上，这不会发生任何问题（不过对你的使用却可能会造成不便，你不知道你得到的到底是那一个键所对应的值对象）。&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Map&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;有两种比较常用的实现：&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;HashMap&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;和&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;TreeMap&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;。&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;HashMap&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;也用到了哈希码的算法，以便快速查找一个键，&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;TreeMap&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;则是对键按序存放，因此它便有一些扩展的方法，比如&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;firstKey(),lastKey()&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;等，你还可以从&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;TreeMap&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;中指定一个范围以取得其子&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Map&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;。键和值的关联很简单，用&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;pub(Object key,Object value)&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;方法即可将一个键与一个值对象相关联。用&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;get(Object key)&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;可得到与此&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;key&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;对象所对应的值对象。&lt;/span&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;2.&lt;/span&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #810081; font-size: 12pt"&gt;List&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #810081; font-size: 12pt"&gt;、&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #810081; font-size: 12pt"&gt;vector&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #810081; font-size: 12pt"&gt;、&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #810081; font-size: 12pt"&gt;set&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #810081; font-size: 12pt"&gt;、&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #810081; font-size: 12pt"&gt;map&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #810081; font-size: 12pt"&gt;的区别与联系&lt;/span&gt;&lt;/u&gt; &lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;在使用&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Java&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的时候，我们都会遇到使用集合（&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Collection&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;）的时候，但是&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Java API&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;提供了多种集合的实现，我在使用和面试的时候频频遇到这样的&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&amp;#8220;&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;抉择&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&amp;#8221; &lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;。&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt; :&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;）（主要还是面试的时候）&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;久而久之，也就有了一点点的心得体会，写出来以供大家讨论。&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;总的说来，&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Java API&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;中所用的集合类，都是实现了&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Collection&lt;/span&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;接口，他的一个类继承结构如下：&lt;/span&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #000066; font-size: 10pt"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 9pt"&gt;Collection&amp;lt;--List&amp;lt;--Vector&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 9pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 9pt"&gt;Collection&amp;lt;--List&amp;lt;--ArrayList&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 9pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 9pt"&gt;Collection&amp;lt;--List&amp;lt;--LinkedList&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 9pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 9pt"&gt;Collection&amp;lt;--Set&amp;lt;--HashSet&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 9pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 9pt"&gt;Collection&amp;lt;--Set&amp;lt;--HashSet&amp;lt;--LinkedHashSet&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 9pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 9pt"&gt;Collection&amp;lt;--Set&amp;lt;--SortedSet&amp;lt;--TreeSet&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Vector : &lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;基于&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Array&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;List&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;，其实就是封装了&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Array&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;所不具备的一些功能方便我们使用，它不可能走入&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Array&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的限制。性能也就不可能超越&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Array&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;。所以，在可能的情况下，我们要多运用&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Array&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;。另外很重要的一点就是&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Vector&amp;#8220;sychronized&amp;#8221;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的，这个也是&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Vector&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;和&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;ArrayList&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的唯一的区别。&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;ArrayList&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;：同&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Vector&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;一样是一个基于&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Array&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;上的链表，但是不同的是&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;ArrayList&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;不是同步的。所以在性能上要比&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Vector&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;优越一些，但是当运行到多线程环境中时，可需要自己在管理线程的同步问题。&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;LinkedList&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;：&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;LinkedList&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;不同于前面两种&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;List&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;，它不是基于&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Array&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的，所以不受&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Array&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;性能的限制。它每一个节点（&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Node&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;）都包含两方面的内容：&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;1.&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;节点本身的数据（&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;data&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;）；&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;2.&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;下一个节点的信息（&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;nextNode&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;）。所以当对&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;LinkedList&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;做添加，删除动作的时候就不用像基于&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Array&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;List&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;一样，必须进行大量的数据移动。只要更改&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;nextNode&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的相关信息就可以实现了。这就是&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;LinkedList&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的优势。&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;List&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;总结：&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;1. &lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;所有的&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;List&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;中只能容纳单个不同类型的对象组成的表，而不是&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Key&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;－&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Value&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;键值对。例如：&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;[ tom,1,c ]&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;；&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;2. &lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;所有的&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;List&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;中可以有相同的元素，例如&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Vector&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;中可以有&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt; [ tom,koo,too,koo ]&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;；&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;3. &lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;所有的&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;List&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;中可以有&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;null&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;元素，例如&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;[ tom,null,1 ]&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;；&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;4. &lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;基于&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Array&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;List&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;（&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Vector&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;，&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;ArrayList&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;）适合查询，而&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;LinkedList&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;（链表）适合添加，删除操作。&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;HashSet&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;：虽然&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Set&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;同&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;List&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;都实现了&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Collection&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;接口，但是他们的实现方式却大不一样。&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;List&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;基本上都是以&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Array&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;为基础。但是&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Set&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;则是在&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;HashMap&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的基础上来实现的，这个就是&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Set&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;和&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;List&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的根本区别。&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;HashSet&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的存储方式是把&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;HashMap&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;中的&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Key&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;作为&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Set&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的对应存储项。看看&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;HashSet&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;add&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;（&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Object obj&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;）方法的实现就可以一目了然了。&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;public boolean add(Object obj)&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;{&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;return map.put(obj, PRESENT) == null;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;}&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;这个也是为什么在&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Set&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;中不能像在&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;List&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;中一样有重复的项的根本原因，因为&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;HashMap&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;key&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;是不能有重复的。&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;LinkedHashSet&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;：&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;HashSet&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的一个子类，一个链表。&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;TreeSet&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;：&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;SortedSet&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的子类，它不同于&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;HashSet&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的根本就是&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;TreeSet&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;是有序的。它是通过&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;SortedMap&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;来实现的。&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Set&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;总结：&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;1. Set&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;实现的基础是&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Map&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;（&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;HashMap&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;）；&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;2. Set&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;中的元素是不能重复的，如果使用&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;add(Object obj)&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;方法添加已经存在的对象，则会覆盖前面的对象；&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;3.&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Java&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;基本概念：集合类&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt; List/Set/Map... &lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;的区别和联系&lt;/span&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #ff6600; font-size: 12pt"&gt;Collection&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #ff6600; font-size: 12pt"&gt;：&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #ff6600; font-size: 12pt"&gt;List&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #ff6600; font-size: 12pt"&gt;、&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #ff6600; font-size: 12pt"&gt;Set&lt;br /&gt;&lt;strong&gt;Map&lt;/strong&gt;&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #ff6600; font-size: 12pt"&gt;：&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #ff6600; font-size: 12pt"&gt;HashMap&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #ff6600; font-size: 12pt"&gt;、&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #ff6600; font-size: 12pt"&gt;HashTable&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #ff6600; font-size: 12pt"&gt;如何在它们之间选择&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;一、&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Array &lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;，&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt; Arrays&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Java&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;所有&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&amp;#8220;&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;存储及随机访问一连串对象&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&amp;#8221;&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的做法，&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;array&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;是最有效率的一种。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;1&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;、&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;效率高，但容量固定且无法动态改变。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;array&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;还有一个缺点是，无法判断其中实际存有多少元素，&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;length&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;只是告诉我们&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;array&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的容量。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;2&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;、&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Java&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;中有一个&lt;/span&gt;&lt;/u&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;Arrays&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #3366ff; font-size: 10pt"&gt;类，专门用来操作&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;array&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;arrays&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;中拥有一组&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;static&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;函数，&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;equals()&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;：比较两个&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;array&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;是否相等。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;array&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;拥有相同元素个数，且所有对应元素两两相等。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;fill()&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;：将值填入&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;array&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;中。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;sort()&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;：用来对&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;array&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;进行排序。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;binarySearch()&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;：在排好序的&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;array&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;中寻找元素。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;System.arraycopy()&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;：&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;array&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的复制。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;二、&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Collection &lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;，&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt; Map&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;若撰写程序时不知道究竟需要多少对象，需要在空间不足时自动扩增容量，则需要使用容器类库，&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;array&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;不适用。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;1&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;、&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Collection &lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;和&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt; Map &lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的区别&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;容器内每个为之所存储的元素个数不同。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;Collection&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;类型者，每个位置只有一个元素。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;Map&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;类型者，持有&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt; key-value pair&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;，像个小型数据库。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;2&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;、各自旗下的子类关系&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;Collection&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt; --&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;List&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;：&lt;/span&gt;&lt;/u&gt;&lt;u&gt; &lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;将以特定次序存储元素。所以取出来的顺序可能和放入顺序不同。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;--&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #ff6600; font-size: 10pt"&gt;ArrayList / LinkedList / Vector&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt; --&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;Set&lt;/span&gt;&lt;/u&gt;&lt;u&gt; &lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;：&lt;/span&gt;&lt;/u&gt;&lt;u&gt; &lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;不能含有重复的元素&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;--&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #ff6600; font-size: 10pt"&gt;HashSet / TreeSet&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;Map&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;--&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #ff6600; font-size: 10pt"&gt;HashMap&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: black; font-size: 10pt"&gt;--&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #ff6600; font-size: 10pt"&gt;HashTable&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: black; font-size: 10pt"&gt;--&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #ff6600; font-size: 10pt"&gt;TreeMap&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;3&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;、其他特征&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;* List&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;，&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Set&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;，&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Map&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;将持有对象一律视为&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Object&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;型别。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;* Collection&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;、&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;List&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;、&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Set&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;、&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Map&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;都是接口，不能实例化。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;继承自它们的&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt; ArrayList, Vector, HashTable, HashMap&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;是具象&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;class&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;，这些才可被实例化。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;* vector&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;容器确切知道它所持有的对象隶属什么型别。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;vector&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;不进行边界检查。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;三、&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 12pt"&gt;Collections&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;Collections&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #3366ff; font-size: 10pt"&gt;是针对集合类的一个帮助类。&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;提供了一系列&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #ff6600; font-size: 10pt"&gt;静态&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;方法实现对各种集合的搜索、排序、线程完全化等操作。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;相当于对&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Array&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;进行类似操作的类&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&amp;#8212;&amp;#8212;Arrays&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;如，&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Collections.max(Collection coll); &lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;取&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;coll&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;中最大的元素。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;Collections.sort(List list); &lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;对&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;list&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;中元素排序&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 12pt"&gt;四、如何选择？&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;1&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;、容器类和&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Array&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;的区别、择取&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;* &lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;容器类仅能持有对象引用（指向对象的指针），而不是将对象信息&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;copy&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;一份至数列某位置。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;* &lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;一旦将对象置入容器内，便损失了该对象的型别信息。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;2&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;、&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;* &lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;在各种&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Lists&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;中，最好的做法是以&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;ArrayList&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;作为缺省选择。当插入、删除频繁时，使用&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;LinkedList()&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;；&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;Vector&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;总是比&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;ArrayList&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;慢，所以要尽量避免使用。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;* &lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;在各种&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Sets&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;中，&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;HashSet&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;通常优于&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;HashTree&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;（插入、查找）。只有当需要产生一个经过排序的序列，才用&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;TreeSet&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;HashTree&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;存在的唯一理由：能够维护其内元素的排序状态。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt; &lt;br /&gt;* &lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;在各种&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Maps&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;中&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;HashMap&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;用于快速查找。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;* &lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;当元素个数固定，用&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Array&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;，因为&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Array&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;效率是最高的。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #3366ff; font-size: 10pt"&gt;结论：最常用的是&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;ArrayList&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #3366ff; font-size: 10pt"&gt;，&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;HashSet&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #3366ff; font-size: 10pt"&gt;，&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;HashMap&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #3366ff; font-size: 10pt"&gt;，&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;Array&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #3366ff; font-size: 10pt"&gt;。&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #ff6600; font-size: 10pt"&gt;注意：&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;1&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;、&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;Collection&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #3366ff; font-size: 10pt"&gt;没有&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;get()&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #3366ff; font-size: 10pt"&gt;方法&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;来取得某个元素。只能通过&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;iterator()&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;遍历元素。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;2&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;、&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;Set&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;和&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Collection&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;拥有一模一样的接口。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;3&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;、&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;List&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;，&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #3366ff; font-size: 10pt"&gt;可以通过&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;get()&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #3366ff; font-size: 10pt"&gt;方法来一次取出一个元素&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;。使用数字来选择一堆对象中的一个，&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;get(0)...&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;(add/get)&lt;br /&gt;4&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;、一般使用&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;ArrayList&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #3366ff; font-size: 10pt"&gt;用&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;LinkedList&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #3366ff; font-size: 10pt"&gt;构造堆栈&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;stack&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #3366ff; font-size: 10pt"&gt;、队列&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;queue&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;5&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;、&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;Map&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #3366ff; font-size: 10pt"&gt;用&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt; put(k,v) / get(k)&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;，还可以使用&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;containsKey()/containsValue()&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;来检查其中是否含有某个&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;key/value&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;HashMap&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;会利用对象的&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;hashCode&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;来快速找到&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;key&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;* hashing&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;u&gt; &lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;哈希码就是将对象的信息经过一些转变形成一个独一无二的&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;int&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;值，这个值存储在一个&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;array&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;中。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;我们都知道所有存储结构中，&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;array&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;查找速度是最快的。所以，可以加速查找。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;发生碰撞时，让&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;array&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;指向多个&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;values&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;。即，数组每个位置上又生成一个梿表。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;6&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #3366ff; font-size: 10pt"&gt;、&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;Map&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #3366ff; font-size: 10pt"&gt;中元素，可以将&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;key&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #3366ff; font-size: 10pt"&gt;序列、&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;value&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #3366ff; font-size: 10pt"&gt;序列单独抽取出来。&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;使用&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: blue; font-size: 10pt"&gt;keySet()&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;抽取&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;key&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;序列，将&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;map&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;中的所有&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;keys&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;生成一个&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Set&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;使用&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: blue; font-size: 10pt"&gt;values(&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #3366ff; font-size: 10pt"&gt;)&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;抽取&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;value&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;序列，将&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;map&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;中的所有&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;values&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;生成一个&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Collection&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p style="text-align: left;background: white" align="left"&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;为什么一个生成&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Set&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;，一个生成&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;Collection&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;？那是因为，&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;key&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;总是独一无二的，&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 'Lucida Sans Unicode','sans-serif'; color: #525150; font-size: 10pt"&gt;value&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;span style="font-family: 宋体; color: #525150; font-size: 10pt"&gt;允许重复。&lt;/span&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/vivid-stanley/aggbug/2264790.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/vivid-stanley/archive/2011/11/27/2264790.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/vivid-stanley/archive/2011/11/21/2257274.html</id><title type="text">Eclipse快捷键大全(转载)</title><summary type="text">Ctrl+1快速修复(最经典的快捷键,就不用多说了)Ctrl+D:删除当前行Ctrl+Alt+↓复制当前行到下一行(复制增加)Ctrl+Alt+↑复制当前行到上一行(复制增加)Alt+↓当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)Alt+↑当前行和上面一行交互位置(同上)Alt+←前一个编辑的页面Alt+→下一个编辑的页面(当然是针对上面那条来说了)Alt+Enter显示当前选择资源(工程,or文件or文件)的属性Shift+Enter在当前行的下一行插入空行(这时鼠标可以在当前行的任一位置,不一定是最后)Shift+Ctrl+Enter在当前行插入空行(原理同上条)Ctrl</summary><published>2011-11-21T07:37:00Z</published><updated>2011-11-21T07:37:00Z</updated><author><name>Stanley.Luo</name><uri>http://www.cnblogs.com/vivid-stanley/</uri></author><link rel="alternate" href="http://www.cnblogs.com/vivid-stanley/archive/2011/11/21/2257274.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/vivid-stanley/archive/2011/11/21/2257274.html"/><content type="html">&lt;strong&gt;&#xD;
&lt;div &gt;&lt;font size="2"&gt;Ctrl+1&amp;nbsp;快速修复(最经典的快捷键,就不用多说了)&lt;br /&gt;Ctrl+D:&amp;nbsp;删除当前行&amp;nbsp;&lt;br /&gt;Ctrl+Alt+&amp;#8595;&amp;nbsp;复制当前行到下一行(复制增加)&lt;br /&gt;Ctrl+Alt+&amp;#8593;&amp;nbsp;复制当前行到上一行(复制增加)&lt;br /&gt;Alt+&amp;#8595;&amp;nbsp;当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)&lt;br /&gt;Alt+&amp;#8593;&amp;nbsp;当前行和上面一行交互位置(同上)&lt;br /&gt;Alt+&amp;#8592;&amp;nbsp;前一个编辑的页面&lt;br /&gt;Alt+&amp;#8594;&amp;nbsp;下一个编辑的页面(当然是针对上面那条来说了)&lt;br /&gt;Alt+Enter&amp;nbsp;显示当前选择资源(工程,or&amp;nbsp;文件&amp;nbsp;or文件)的属性&lt;br /&gt;Shift+Enter&amp;nbsp;在当前行的下一行插入空行(这时鼠标可以在当前行的任一位置,不一定是最后)&lt;br /&gt;Shift+Ctrl+Enter&amp;nbsp;在当前行插入空行(原理同上条)&lt;br /&gt;Ctrl+Q&amp;nbsp;定位到最后编辑的地方&lt;br /&gt;Ctrl+L&amp;nbsp;定位在某行&amp;nbsp;(对于程序超过100的人就有福音了)&lt;br /&gt;Ctrl+M&amp;nbsp;最大化当前的Edit或View&amp;nbsp;(再按则反之)&lt;br /&gt;Ctrl+/&amp;nbsp;注释当前行,再按则取消注释&lt;br /&gt;Ctrl+O&amp;nbsp;快速显示&amp;nbsp;OutLine&lt;br /&gt;Ctrl+T&amp;nbsp;快速显示当前类的继承结构&lt;br /&gt;Ctrl+W&amp;nbsp;关闭当前Editer&lt;br /&gt;Ctrl+K&amp;nbsp;参照选中的Word快速定位到下一个&lt;br /&gt;Ctrl+E&amp;nbsp;快速显示当前Editer的下拉列表(如果当前页面没有显示的用黑体表示)&lt;br /&gt;Ctrl+/(小键盘)&amp;nbsp;折叠当前类中的所有代码&lt;br /&gt;Ctrl+&amp;#215;(小键盘)&amp;nbsp;展开当前类中的所有代码&lt;br /&gt;Ctrl+Space&amp;nbsp;代码助手完成一些代码的插入(但一般和输入法有冲突,可以修改输入法的热键,也可以暂用Alt+/来代替)&lt;br /&gt;Ctrl+Shift+E&amp;nbsp;显示管理当前打开的所有的View的管理器(可以选择关闭,激活等操作)&lt;br /&gt;Ctrl+J&amp;nbsp;正向增量查找(按下Ctrl+J后,你所输入的每个字母编辑器都提供快速匹配定位到某个单词,如果没有,则在stutes&amp;nbsp;line中显示没有找到了,查一个单词时,特别实用,这个功能Idea两年前就有了)&lt;br /&gt;Ctrl+Shift+J&amp;nbsp;反向增量查找(和上条相同,只不过是从后往前查)&lt;br /&gt;Ctrl+Shift+F4&amp;nbsp;关闭所有打开的Editer&lt;br /&gt;Ctrl+Shift+X&amp;nbsp;把当前选中的文本全部变味小写&lt;br /&gt;Ctrl+Shift+Y&amp;nbsp;把当前选中的文本全部变为小写&lt;br /&gt;Ctrl+Shift+F&amp;nbsp;格式化当前代码&lt;br /&gt;Ctrl+Shift+P&amp;nbsp;定位到对于的匹配符(譬如{})&amp;nbsp;(从前面定位后面时,光标要在匹配符里面,后面到前面,则反之)&lt;br /&gt;&lt;br /&gt;下面的快捷键是重构里面常用的,本人就自己喜欢且常用的整理一下(注:一般重构的快捷键都是Alt+Shift开头的了)&lt;br /&gt;Alt+Shift+R&amp;nbsp;重命名&amp;nbsp;(是我自己最爱用的一个了,尤其是变量和类的Rename,比手工方法能节省很多劳动力)&lt;br /&gt;Alt+Shift+M&amp;nbsp;抽取方法&amp;nbsp;(这是重构里面最常用的方法之一了,尤其是对一大堆泥团代码有用)&lt;br /&gt;Alt+Shift+C&amp;nbsp;修改函数结构(比较实用,有N个函数调用了这个方法,修改一次搞定)&lt;br /&gt;Alt+Shift+L&amp;nbsp;抽取本地变量(&amp;nbsp;可以直接把一些魔法数字和字符串抽取成一个变量,尤其是多处调用的时候)&lt;br /&gt;Alt+Shift+F&amp;nbsp;把Class中的local变量变为field变量&amp;nbsp;(比较实用的功能)&lt;br /&gt;Alt+Shift+I&amp;nbsp;合并变量(可能这样说有点不妥Inline)&lt;br /&gt;Alt+Shift+V&amp;nbsp;移动函数和变量(不怎么常用)&lt;br /&gt;Alt+Shift+Z&amp;nbsp;重构的后悔药(Undo)&lt;br /&gt;&lt;br /&gt;编辑&lt;br /&gt;作用域&amp;nbsp;功能&amp;nbsp;快捷键&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;查找并替换&amp;nbsp;Ctrl+F&amp;nbsp;&lt;br /&gt;文本编辑器&amp;nbsp;查找上一个&amp;nbsp;Ctrl+Shift+K&amp;nbsp;&lt;br /&gt;文本编辑器&amp;nbsp;查找下一个&amp;nbsp;Ctrl+K&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;撤销&amp;nbsp;Ctrl+Z&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;复制&amp;nbsp;Ctrl+C&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;恢复上一个选择&amp;nbsp;Alt+Shift+&amp;#8595;&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;剪切&amp;nbsp;Ctrl+X&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;快速修正&amp;nbsp;Ctrl1+1&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;内容辅助&amp;nbsp;Alt+/&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;全部选中&amp;nbsp;Ctrl+A&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;删除&amp;nbsp;Delete&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;上下文信息&amp;nbsp;Alt+？&lt;br /&gt;Alt+Shift+?&lt;br /&gt;Ctrl+Shift+Space&amp;nbsp;&lt;br /&gt;Java编辑器&amp;nbsp;显示工具提示描述&amp;nbsp;F2&amp;nbsp;&lt;br /&gt;Java编辑器&amp;nbsp;选择封装元素&amp;nbsp;Alt+Shift+&amp;#8593;&amp;nbsp;&lt;br /&gt;Java编辑器&amp;nbsp;选择上一个元素&amp;nbsp;Alt+Shift+&amp;#8592;&amp;nbsp;&lt;br /&gt;Java编辑器&amp;nbsp;选择下一个元素&amp;nbsp;Alt+Shift+&amp;#8594;&amp;nbsp;&lt;br /&gt;文本编辑器&amp;nbsp;增量查找&amp;nbsp;Ctrl+J&amp;nbsp;&lt;br /&gt;文本编辑器&amp;nbsp;增量逆向查找&amp;nbsp;Ctrl+Shift+J&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;粘贴&amp;nbsp;Ctrl+V&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;重做&amp;nbsp;Ctrl+Y&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;查看&lt;br /&gt;作用域&amp;nbsp;功能&amp;nbsp;快捷键&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;放大&amp;nbsp;Ctrl+=&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;缩小&amp;nbsp;Ctrl+-&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;窗口&lt;br /&gt;作用域&amp;nbsp;功能&amp;nbsp;快捷键&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;激活编辑器&amp;nbsp;F12&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;切换编辑器&amp;nbsp;Ctrl+Shift+W&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;上一个编辑器&amp;nbsp;Ctrl+Shift+F6&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;上一个视图&amp;nbsp;Ctrl+Shift+F7&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;上一个透视图&amp;nbsp;Ctrl+Shift+F8&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;下一个编辑器&amp;nbsp;Ctrl+F6&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;下一个视图&amp;nbsp;Ctrl+F7&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;下一个透视图&amp;nbsp;Ctrl+F8&amp;nbsp;&lt;br /&gt;文本编辑器&amp;nbsp;显示标尺上下文菜单&amp;nbsp;Ctrl+W&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;显示视图菜单&amp;nbsp;Ctrl+F10&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;显示系统菜单&amp;nbsp;Alt+-&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;导航&lt;br /&gt;作用域&amp;nbsp;功能&amp;nbsp;快捷键&amp;nbsp;&lt;br /&gt;Java编辑器&amp;nbsp;打开结构&amp;nbsp;Ctrl+F3&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;打开类型&amp;nbsp;Ctrl+Shift+T&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;打开类型层次结构&amp;nbsp;F4&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;打开声明&amp;nbsp;F3&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;打开外部javadoc&amp;nbsp;Shift+F2&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;打开资源&amp;nbsp;Ctrl+Shift+R&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;后退历史记录&amp;nbsp;Alt+&amp;#8592;&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;前进历史记录&amp;nbsp;Alt+&amp;#8594;&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;上一个&amp;nbsp;Ctrl+,&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;下一个&amp;nbsp;Ctrl+.&amp;nbsp;&lt;br /&gt;Java编辑器&amp;nbsp;显示大纲&amp;nbsp;Ctrl+O&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;在层次结构中打开类型&amp;nbsp;Ctrl+Shift+H&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;转至匹配的括号&amp;nbsp;Ctrl+Shift+P&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;转至上一个编辑位置&amp;nbsp;Ctrl+Q&amp;nbsp;&lt;br /&gt;Java编辑器&amp;nbsp;转至上一个成员&amp;nbsp;Ctrl+Shift+&amp;#8593;&amp;nbsp;&lt;br /&gt;Java编辑器&amp;nbsp;转至下一个成员&amp;nbsp;Ctrl+Shift+&amp;#8595;&amp;nbsp;&lt;br /&gt;文本编辑器&amp;nbsp;转至行&amp;nbsp;Ctrl+L&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;搜索&lt;br /&gt;作用域&amp;nbsp;功能&amp;nbsp;快捷键&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;出现在文件中&amp;nbsp;Ctrl+Shift+U&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;打开搜索对话框&amp;nbsp;Ctrl+H&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;工作区中的声明&amp;nbsp;Ctrl+G&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;工作区中的引用&amp;nbsp;Ctrl+Shift+G&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;文本编辑&lt;br /&gt;作用域&amp;nbsp;功能&amp;nbsp;快捷键&amp;nbsp;&lt;br /&gt;文本编辑器&amp;nbsp;改写切换&amp;nbsp;Insert&amp;nbsp;&lt;br /&gt;文本编辑器&amp;nbsp;上滚行&amp;nbsp;Ctrl+&amp;#8593;&amp;nbsp;&lt;br /&gt;文本编辑器&amp;nbsp;下滚行&amp;nbsp;Ctrl+&amp;#8595;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;文件&lt;br /&gt;作用域&amp;nbsp;功能&amp;nbsp;快捷键&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;保存&amp;nbsp;Ctrl+X&amp;nbsp;&lt;br /&gt;Ctrl+S&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;打印&amp;nbsp;Ctrl+P&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;关闭&amp;nbsp;Ctrl+F4&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;全部保存&amp;nbsp;Ctrl+Shift+S&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;全部关闭&amp;nbsp;Ctrl+Shift+F4&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;属性&amp;nbsp;Alt+Enter&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;新建&amp;nbsp;Ctrl+N&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;项目&lt;br /&gt;作用域&amp;nbsp;功能&amp;nbsp;快捷键&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;全部构建&amp;nbsp;Ctrl+B&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;源代码&lt;br /&gt;作用域&amp;nbsp;功能&amp;nbsp;快捷键&amp;nbsp;&lt;br /&gt;Java编辑器&amp;nbsp;格式化&amp;nbsp;Ctrl+Shift+F&amp;nbsp;&lt;br /&gt;Java编辑器&amp;nbsp;取消注释&amp;nbsp;Ctrl+\&amp;nbsp;&lt;br /&gt;Java编辑器&amp;nbsp;注释&amp;nbsp;Ctrl+/&amp;nbsp;&lt;br /&gt;Java编辑器&amp;nbsp;添加导入&amp;nbsp;Ctrl+Shift+M&amp;nbsp;&lt;br /&gt;Java编辑器&amp;nbsp;组织导入&amp;nbsp;Ctrl+Shift+O&amp;nbsp;&lt;br /&gt;Java编辑器&amp;nbsp;使用try/catch块来包围&amp;nbsp;未设置，太常用了，所以在这里列出,建议自己设置。&lt;br /&gt;也可以使用Ctrl+1自动修正。&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;运行&lt;br /&gt;作用域&amp;nbsp;功能&amp;nbsp;快捷键&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;单步返回&amp;nbsp;F7&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;单步跳过&amp;nbsp;F6&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;单步跳入&amp;nbsp;F5&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;单步跳入选择&amp;nbsp;Ctrl+F5&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;调试上次启动&amp;nbsp;F11&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;继续&amp;nbsp;F8&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;使用过滤器单步执行&amp;nbsp;Shift+F5&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;添加/去除断点&amp;nbsp;Ctrl+Shift+B&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;显示&amp;nbsp;Ctrl+D&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;运行上次启动&amp;nbsp;Ctrl+F11&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;运行至行&amp;nbsp;Ctrl+R&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;执行&amp;nbsp;Ctrl+U&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;重构&lt;br /&gt;作用域&amp;nbsp;功能&amp;nbsp;快捷键&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;撤销重构&amp;nbsp;Alt+Shift+Z&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;抽取方法&amp;nbsp;Alt+Shift+M&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;抽取局部变量&amp;nbsp;Alt+Shift+L&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;内联&amp;nbsp;Alt+Shift+I&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;移动&amp;nbsp;Alt+Shift+V&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;重命名&amp;nbsp;Alt+Shift+R&amp;nbsp;&lt;br /&gt;全局&amp;nbsp;重做&amp;nbsp;Alt+Shift+Y&lt;/font&gt;&lt;/div&gt;&lt;/strong&gt;&lt;img src="http://www.cnblogs.com/vivid-stanley/aggbug/2257274.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/vivid-stanley/archive/2011/11/21/2257274.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/vivid-stanley/archive/2010/10/09/1846892.html</id><title type="text">《设计模式》解读</title><summary type="text">摘自：http://www.cnblogs.com/QinBaoBei/archive/2010/05/10/1731788.html适配器模式，外观模式三者之间的区别： 装饰者模式的话，它并不会改变接口，而是将一个一个的接口进行装饰，也就是添加新的功能。适配器模式是将一个接口通过适配来间接转换为另一个接口。外观模式的话，其主要是提供一个整洁的一致的接口给客户端。</summary><published>2010-10-09T13:38:00Z</published><updated>2010-10-09T13:38:00Z</updated><author><name>Stanley.Luo</name><uri>http://www.cnblogs.com/vivid-stanley/</uri></author><link rel="alternate" href="http://www.cnblogs.com/vivid-stanley/archive/2010/10/09/1846892.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/vivid-stanley/archive/2010/10/09/1846892.html"/><content type="html">&lt;p&gt;摘自：&lt;/p&gt;&#xD;
&lt;p&gt;&lt;a href="http://www.cnblogs.com/QinBaoBei/archive/2010/05/10/1731788.html"&gt;http://www.cnblogs.com/QinBaoBei/archive/2010/05/10/1731788.html&lt;/a&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;strong&gt;&lt;font face="微软雅黑"&gt;适配器模式，外观模式三者之间的区别：&lt;/font&gt;&lt;/strong&gt; &lt;/p&gt;&#xD;
&lt;p&gt;&lt;font color="#000000" size="2" face="微软雅黑"&gt;装饰者模式的话，它并不会改变接口，而是将一个一个的接口进行装饰，也就是添加新的功能。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font color="#000000" size="2" face="微软雅黑"&gt;适配器模式是将一个接口通过适配来间接转换为另一个接口。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font color="#000000" size="2" face="微软雅黑"&gt;外观模式的话，其主要是提供一个整洁的一致的接口给客户端。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/vivid-stanley/aggbug/1846892.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/vivid-stanley/archive/2010/10/09/1846892.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/vivid-stanley/archive/2009/04/19/1439322.html</id><title type="text">《移山之道-VSTS软件开发指南》---读书笔记</title><summary type="text">MSF的基本原则：（1）推动信息共享(Foster open communications)（2）为共同的远景而工作(Work toward a shared vision)（3）充分授权和信任(Empower team members)（4）各司其责，对项目共同负责(Establish clear accountability and shared responsibility)（5）重视商业价...</summary><published>2009-04-19T14:31:00Z</published><updated>2009-04-19T14:31:00Z</updated><author><name>Stanley.Luo</name><uri>http://www.cnblogs.com/vivid-stanley/</uri></author><link rel="alternate" href="http://www.cnblogs.com/vivid-stanley/archive/2009/04/19/1439322.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/vivid-stanley/archive/2009/04/19/1439322.html"/></entry></feed>
