﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-lsbwahaha-随笔分类-数据结构</title><link>http://www.blogjava.net/lsbwahaha/category/38812.html</link><description /><language>zh-cn</language><lastBuildDate>Tue, 05 May 2009 01:25:30 GMT</lastBuildDate><pubDate>Tue, 05 May 2009 01:25:30 GMT</pubDate><ttl>60</ttl><item><title>CSVReader的下载地址</title><link>http://www.blogjava.net/lsbwahaha/archive/2009/05/04/268880.html</link><dc:creator>胡鹏</dc:creator><author>胡鹏</author><pubDate>Mon, 04 May 2009 12:04:00 GMT</pubDate><guid>http://www.blogjava.net/lsbwahaha/archive/2009/05/04/268880.html</guid><wfw:comment>http://www.blogjava.net/lsbwahaha/comments/268880.html</wfw:comment><comments>http://www.blogjava.net/lsbwahaha/archive/2009/05/04/268880.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lsbwahaha/comments/commentRss/268880.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lsbwahaha/services/trackbacks/268880.html</trackback:ping><description><![CDATA[目前最高版本： &nbsp; <a href="http://downloads.sourceforge.net/opencsv/opencsv-1.8-src-with-libs.tar.gz">http://downloads.sourceforge.net/opencsv/opencsv-1.8-src-with-libs.tar.gz</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />
&nbsp; 开源的opencsv， 用来操作csv，这个还是不错的。&nbsp;&nbsp; 要看介绍还是去看官方的文档吧，下了，感觉还不错的~&nbsp; 一些使用的东东上面说的很清楚，我也懒的复制了，这个给自己标注下吧。。 hoho
<img src ="http://www.blogjava.net/lsbwahaha/aggbug/268880.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lsbwahaha/" target="_blank">胡鹏</a> 2009-05-04 20:04 <a href="http://www.blogjava.net/lsbwahaha/archive/2009/05/04/268880.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>求：2个数的最小公倍数和 最大公约数</title><link>http://www.blogjava.net/lsbwahaha/archive/2009/04/12/265117.html</link><dc:creator>胡鹏</dc:creator><author>胡鹏</author><pubDate>Sun, 12 Apr 2009 07:03:00 GMT</pubDate><guid>http://www.blogjava.net/lsbwahaha/archive/2009/04/12/265117.html</guid><wfw:comment>http://www.blogjava.net/lsbwahaha/comments/265117.html</wfw:comment><comments>http://www.blogjava.net/lsbwahaha/archive/2009/04/12/265117.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lsbwahaha/comments/commentRss/265117.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lsbwahaha/services/trackbacks/265117.html</trackback:ping><description><![CDATA[<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;简单程序：求2个数的最小公倍数 和 最大公约数<br />
<br />
</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #000000"><br />
<img id="Codehighlighter1_16_637_Open_Image" onclick="this.style.display='none'; Codehighlighter1_16_637_Open_Text.style.display='none'; Codehighlighter1_16_637_Closed_Image.style.display='inline'; Codehighlighter1_16_637_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_16_637_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_16_637_Closed_Text.style.display='none'; Codehighlighter1_16_637_Open_Image.style.display='inline'; Codehighlighter1_16_637_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" /></span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;T&nbsp;</span><span id="Codehighlighter1_16_637_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_16_637_Open_Text"><span style="color: #000000">{<br />
<img id="Codehighlighter1_58_231_Open_Image" onclick="this.style.display='none'; Codehighlighter1_58_231_Open_Text.style.display='none'; Codehighlighter1_58_231_Closed_Image.style.display='inline'; Codehighlighter1_58_231_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_58_231_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_58_231_Closed_Text.style.display='none'; Codehighlighter1_58_231_Open_Image.style.display='inline'; Codehighlighter1_58_231_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;main(String[]&nbsp;args)&nbsp;</span><span id="Codehighlighter1_58_231_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_58_231_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;m,&nbsp;n;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;m</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">32</span><span style="color: #000000">&nbsp;;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;n&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">48</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(m</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">和</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">n</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">的</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">最大公约数是：</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;getGongYue(m,n));<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">最小公倍数是：</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;getGongBei(m,n));<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;<br />
<img id="Codehighlighter1_236_299_Open_Image" onclick="this.style.display='none'; Codehighlighter1_236_299_Open_Text.style.display='none'; Codehighlighter1_236_299_Closed_Image.style.display='inline'; Codehighlighter1_236_299_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_236_299_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_236_299_Closed_Text.style.display='none'; Codehighlighter1_236_299_Open_Image.style.display='inline'; Codehighlighter1_236_299_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_236_299_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff">/**&nbsp;*/</span><span id="Codehighlighter1_236_299_Open_Text"><span style="color: #008000">/**</span><span style="color: #008000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;得到&nbsp;m,n&nbsp;的最大公约数<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span style="color: #808080">@param</span><span style="color: #008000">&nbsp;m<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span style="color: #808080">@param</span><span style="color: #008000">&nbsp;n<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span style="color: #808080">@return</span><span style="color: #008000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">*/</span></span><span style="color: #000000"><br />
<img id="Codehighlighter1_344_489_Open_Image" onclick="this.style.display='none'; Codehighlighter1_344_489_Open_Text.style.display='none'; Codehighlighter1_344_489_Closed_Image.style.display='inline'; Codehighlighter1_344_489_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_344_489_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_344_489_Closed_Text.style.display='none'; Codehighlighter1_344_489_Open_Image.style.display='inline'; Codehighlighter1_344_489_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;getGongYue(</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;m,&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;n)</span><span id="Codehighlighter1_344_489_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_344_489_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;&nbsp;r;<br />
<img id="Codehighlighter1_361_458_Open_Image" onclick="this.style.display='none'; Codehighlighter1_361_458_Open_Text.style.display='none'; Codehighlighter1_361_458_Closed_Image.style.display='inline'; Codehighlighter1_361_458_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_361_458_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_361_458_Closed_Text.style.display='none'; Codehighlighter1_361_458_Open_Image.style.display='inline'; Codehighlighter1_361_458_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">do</span><span style="color: #000000">&nbsp;</span><span id="Codehighlighter1_361_458_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_361_458_Open_Text"><span style="color: #000000">{<br />
<img id="Codehighlighter1_377_419_Open_Image" onclick="this.style.display='none'; Codehighlighter1_377_419_Open_Text.style.display='none'; Codehighlighter1_377_419_Closed_Image.style.display='inline'; Codehighlighter1_377_419_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_377_419_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_377_419_Closed_Text.style.display='none'; Codehighlighter1_377_419_Open_Image.style.display='inline'; Codehighlighter1_377_419_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(m&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">&nbsp;n)&nbsp;</span><span id="Codehighlighter1_377_419_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_377_419_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;t&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;m;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;m&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;n;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;n&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;t;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;r&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;m&nbsp;</span><span style="color: #000000">%</span><span style="color: #000000">&nbsp;n;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;m&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;n;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;n&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;r;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">while</span><span style="color: #000000">&nbsp;(r&nbsp;</span><span style="color: #000000">!=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;m;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;<br />
<img id="Codehighlighter1_494_557_Open_Image" onclick="this.style.display='none'; Codehighlighter1_494_557_Open_Text.style.display='none'; Codehighlighter1_494_557_Closed_Image.style.display='inline'; Codehighlighter1_494_557_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_494_557_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_494_557_Closed_Text.style.display='none'; Codehighlighter1_494_557_Open_Image.style.display='inline'; Codehighlighter1_494_557_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_494_557_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff">/**&nbsp;*/</span><span id="Codehighlighter1_494_557_Open_Text"><span style="color: #008000">/**</span><span style="color: #008000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;得到&nbsp;m,n&nbsp;的最小公倍数<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span style="color: #808080">@param</span><span style="color: #008000">&nbsp;m<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span style="color: #808080">@param</span><span style="color: #008000">&nbsp;n<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span style="color: #808080">@return</span><span style="color: #008000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">*/</span></span><span style="color: #000000"><br />
<img id="Codehighlighter1_602_635_Open_Image" onclick="this.style.display='none'; Codehighlighter1_602_635_Open_Text.style.display='none'; Codehighlighter1_602_635_Closed_Image.style.display='inline'; Codehighlighter1_602_635_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_602_635_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_602_635_Closed_Text.style.display='none'; Codehighlighter1_602_635_Open_Image.style.display='inline'; Codehighlighter1_602_635_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">long</span><span style="color: #000000">&nbsp;getGongBei(</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;m,</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;n)</span><span id="Codehighlighter1_602_635_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_602_635_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;m</span><span style="color: #000000">*</span><span style="color: #000000">n</span><span style="color: #000000">/</span><span style="color: #000000">getGongYue(m,n);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />}</span></span></div>
<img src ="http://www.blogjava.net/lsbwahaha/aggbug/265117.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lsbwahaha/" target="_blank">胡鹏</a> 2009-04-12 15:03 <a href="http://www.blogjava.net/lsbwahaha/archive/2009/04/12/265117.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>数据结构—算法介绍(转)</title><link>http://www.blogjava.net/lsbwahaha/archive/2009/04/12/265115.html</link><dc:creator>胡鹏</dc:creator><author>胡鹏</author><pubDate>Sun, 12 Apr 2009 06:37:00 GMT</pubDate><guid>http://www.blogjava.net/lsbwahaha/archive/2009/04/12/265115.html</guid><wfw:comment>http://www.blogjava.net/lsbwahaha/comments/265115.html</wfw:comment><comments>http://www.blogjava.net/lsbwahaha/archive/2009/04/12/265115.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lsbwahaha/comments/commentRss/265115.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lsbwahaha/services/trackbacks/265115.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp; 算法(Algorithm)是一系列解决问题的清晰指令，也就是说，能够对一定规范的输入，在有限时间内获得所要求的输出。如果一个算法有缺陷，或不适合于某个问题，执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂度与时间复杂度来衡量。 <br />
<p>　　算法可以理解为有基本运算及规定的运算顺序所构成的完整的解题步骤。或者看成按照要求设计好的有限的确切的计算序列，并且这样的步<br />
骤和序列可以解决一类问题。<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp; 一个算法应该具有以下五个重要的特征：<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1、有穷性： 一个算法必须保证执行有限步之后结束; </p>
<p>　　2、确切性： 算法的每一步骤必须有确切的定义;</p>
<p>　　3、输入：一个算法有0个或多个输入，以刻画运算对象的初始情况，所谓0个输入是指算法本身定除了初始条件;</p>
<p>　　4、输出：一个算法有一个或多个输出，以反映对输入数据加工后的结果。没有输出的算法是毫无意义的;</p>
<p>　　5、可行性： 算法原则上能够精确地运行，而且人们用笔和纸做有限次运算后即可完成。<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;计算机科学家尼克劳斯-沃思曾著过一本著名的书《数据结构+算法=程序》，可见算法在计算机科学界与计算机应用界的地位。<br />
</p>
<p><br />
<strong>算法的复杂度</strong> </p>
<p>　　同一问题可用不同算法解决，而一个算法的质量优劣将影响到算法乃至程序的效率。算法分析的目的在于选择合适算法和改进算法。一个算法的评价主要从时间复杂度和空间复杂度来考虑。</p>
<p>　　时间复杂度</p>
<p>　　算法的时间复杂度是指算法需要消耗的时间资源。一般来说，计算机算法是问题规模n 的函数f(n)，算法的时间复杂度也因此记做</p>
<p>　　T(n)=&#927;(f(n))</p>
<p>　　因此，问题的规模n 越大，算法执行的时间的增长率与f(n) 的增长率正相关，称作渐进时间复杂度(Asymptotic Time Complexity)。</p>
<p>　　空间复杂度</p>
<p>　　算法的空间复杂度是指算法需要消耗的空间资源。其计算和表示方法与时间复杂度类似，一般都用复杂度的渐近性来表示。同时间复杂度相比，空间复杂度的分析要简单得多。</p>
<p><strong>算法设计与分析的基本方法</strong> </p>
<p>　　1.递推法</p>
<p>　　递推法是利用问题本身所具有的一种递推关系求问题解的一种方法。它把问题分成若干步，找出相邻几步的关系，从而达到目的，此方法称为递推法。</p>
<p>　　2.递归</p>
<p>　　递归指的是一个过程：函数不断引用自身，直到引用的对象已知</p>
<p>　　3.穷举搜索法</p>
<p>　　穷举搜索法是对可能是解的众多候选解按某种顺序进行逐一枚举和检验，并从众找出那些符合要求的候选解作为问题的解。</p>
<p>　　4.贪婪法</p>
<p>　　贪婪法是一种不追求最优解，只希望得到较为满意解的方法。贪婪法一般可以快速得到满意的解，因为它省去了为找最优解要穷尽所有可能而必须耗费的大量时间。贪婪法常以当前情况为基础作最优选择，而不考虑各种可能的整体情况，所以贪婪法不要回溯。</p>
<p>　　5.分治法</p>
<p>　　把一个复杂的问题分成两个或更多的相同或相似的子问题，再把子问题分成更小的子问题&#8230;&#8230;直到最后子问题可以简单的直接求解，原问题的解即子问题的解的合并。</p>
<p>　　6.动态规划法</p>
<p>　　动态规划是一种在数学和计算机科学中使用的，用于求解包含重叠子问题的最优化问题的方法。其基本思想是，将原问题分解为相似的子问题，在求解的过程中通过子问题的解求出原问题的解。动态规划的思想是多种算法的基础，被广泛应用于计算机科学和工程领域。</p>
<p>　　7.迭代法</p>
<p>　　迭代是数值分析中通过从一个初始估计出发寻找一系列近似解来解决问题(一般是解方程或者方程组)的过程，为实现这一过程所使用的方法统称为迭代法。<br />
</p>
<p><strong><br />
&nbsp;&nbsp; 算法分类</strong> </p>
<p>　　算法可大致分为基本算法、数据结构的算法、数论与代数算法、计算几何的算法、图论的算法、动态规划以及数值分析、<a href="http://www.miiceic.org.cn/phrase/200801081050021.html" target="_new">加密</a>算法、排序算法、检索算法、随机化算法、并行算法。<br />
</p>
<p><br />
<br />
<br />
<br />
&nbsp;</p>
<img src ="http://www.blogjava.net/lsbwahaha/aggbug/265115.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lsbwahaha/" target="_blank">胡鹏</a> 2009-04-12 14:37 <a href="http://www.blogjava.net/lsbwahaha/archive/2009/04/12/265115.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java数据结构学习—数据结构的基本概念(转)</title><link>http://www.blogjava.net/lsbwahaha/archive/2009/04/12/265113.html</link><dc:creator>胡鹏</dc:creator><author>胡鹏</author><pubDate>Sun, 12 Apr 2009 06:22:00 GMT</pubDate><guid>http://www.blogjava.net/lsbwahaha/archive/2009/04/12/265113.html</guid><wfw:comment>http://www.blogjava.net/lsbwahaha/comments/265113.html</wfw:comment><comments>http://www.blogjava.net/lsbwahaha/archive/2009/04/12/265113.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lsbwahaha/comments/commentRss/265113.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lsbwahaha/services/trackbacks/265113.html</trackback:ping><description><![CDATA[<p style="text-indent: 2em">数据结构的基本概念</p>
<p style="text-indent: 2em"><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 数据：</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 数据（data）是描述客观事物的数字、字符以及所有能够输入到计算机中并能被计算机接受的各种符号集合的统称。数据是信息的符号表示，是计算机程序的处理对象。除了数值数据，计算机能够处理的数据还可以是各种非数值数据，如字符串、图形、音频、视频等多媒体数据。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 表示一个事物的一组数据称为一个数据元素（data element）：数据元素是数据的基本单位。一个数据元素可以是一个不可分割的原子项，也可以由多个数据项组成。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 数据项（data item）是数据元素中有独立含义的、不可分割的最小标识单位。例如，一个整数、一个字符都是原子项；一个学生数据元素包含学号、姓名、性别和出生日期等多个数据项组成。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>
<p style="text-indent: 2em">数据类型：</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 类型（type）是具有相同逻辑意义的一组值的集合。数据类型（data type）是指一个类型和定义在这个类型上的操作集合。数据类型定义了数据的性质、取值范围以及对数据所能进行的各种操作。例如，Java语言的整数类型int，除了数值集合[-231，...，-2，-1，0，1，2，...，231-1]之外，还包括在这个值集合上的操作集合[+，-，*，/，%，=]。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 程序中的每一个数据都属于一个数据类型，决定了数据的类型也就决定了数据的性质以及对数据进行的运算和操作，同时数据也受到类型的保护，确保数据不能进行非法操作。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 高级程序涉及语言通常预定一些基本数据类型和构造数据类型。基本数据类型的值是不可分解的，它可直接参与该类型所允许的运算。构造数据类型是使用已有的简单数据类型和已定义的构造数据类型按照一定的语法规则组织起来的较复杂的数据类型。构造数据类型的变量包含多个数据项。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; java语言的基本数据类型有整数类型、浮点数类型、字符类型、布尔类型，构造数据类型（引用类型）有数组、类和接口。</p>
<p style="text-indent: 2em">&nbsp;</p>
<p style="text-indent: 2em">数据结构</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 计算机处理的数据不是杂乱无章的，而是有着内在联系的。只有分析清楚它们的内在联系，对大量的、复杂的数据才能进行复核的组织和有效处理。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 数据结构是指元素之间存在的关系。一个数据结构（data structure）是由n（n&#8805;0）个数据元素组成的有限集合，数据元素之间具有某种特定的关系。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 数据结构概念包括三方向：数据的逻辑结构</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 数据的存储结构</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 数据的操作</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 数据结构与数据类型两个概念的侧重点不同。数据类型研究的是每种数据所具有的特性，以及对这种特性的数据能够进行哪些操作；数据结构研究的是数据元素之间具有的相互关系，数据结构与数据元素的数据类型无关，也不随数据元素值的变化而变化。</p>
<p style="text-indent: 2em">&nbsp;</p>
<p style="text-indent: 2em">抽象数据类型</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 程序设计语言使用数据类型描述数据特性，采取&#8220;表示与实现分离&#8221;的策略。语言本身仅提供数据类型的语法规则，并没有说明这些数据类型是如何实现的；程序员按照这些规则使用数据类型，而不必知道这些数据类型是如何实现的。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 抽象数据类型（Abstract Data type，ADT）指一个数学模型以及定义在该模型上的一组操作。抽象数据类型和数据类型本质上是一个概念，它的最重要特征是将一个类型上的数据及操作的逻辑含义与具体实现分离</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 与使用数据类型描述数据特性一样，通常使用抽象数据类型描述数据结构，将线性表、树、图等数据结构分别定义为抽象数据类型，每种抽象数据类型描述一种数据结构的逻辑特性和操作，与该数据结构在计算机内的存储及实现无关。</p>
<p style="text-indent: 2em">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 抽象数据类型是软件模块化设计思想的重要手段。一个抽象数据类型是描述一种特定功能软件的基本模块，由各种基本模块可组织和构造起来一个庞大的软件系统。</p>
<img src ="http://www.blogjava.net/lsbwahaha/aggbug/265113.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lsbwahaha/" target="_blank">胡鹏</a> 2009-04-12 14:22 <a href="http://www.blogjava.net/lsbwahaha/archive/2009/04/12/265113.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java容器学习</title><link>http://www.blogjava.net/lsbwahaha/archive/2009/04/06/264106.html</link><dc:creator>胡鹏</dc:creator><author>胡鹏</author><pubDate>Mon, 06 Apr 2009 05:36:00 GMT</pubDate><guid>http://www.blogjava.net/lsbwahaha/archive/2009/04/06/264106.html</guid><wfw:comment>http://www.blogjava.net/lsbwahaha/comments/264106.html</wfw:comment><comments>http://www.blogjava.net/lsbwahaha/archive/2009/04/06/264106.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/lsbwahaha/comments/commentRss/264106.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lsbwahaha/services/trackbacks/264106.html</trackback:ping><description><![CDATA[<p>ArrayList 读快 改 慢&nbsp;<wbr> (底层数组实现)</p>
<p>LinkedList 改快 读 慢 (链表 实现)</p>
<p>Hash&nbsp;<wbr> 两者之间<br />
<br />
<img alt="" src="http://www.blogjava.net/images/blogjava_net/lsbwahaha/aaa.jpg" border="0" /><br />
</p>
<p>重复是指equals相同就是重复</p>
<p>当对象当作索引的时候(键、值)：重写equals方法，必须重写hashCode方法，保证equals了，要保证hashCode也相同</p>
<p>Set: 没有顺序，不可以重复</p>
<p>List: 有顺序，可以重复<wbr></p>
<p>Map:一个叫键，一个值&nbsp;<wbr> 两个两个往里面放的</p>
<img alt="" src="http://www.blogjava.net/images/blogjava_net/lsbwahaha/bbb.jpg" border="0" /><br />
<p>Collection方法 举例子一：</p>
<p align="left"><strong>package</strong> com.Collection;</p>
<p align="left"><strong>import</strong> java.util.ArrayList;</p>
<p align="left"><strong>import</strong> java.util.Collection;</p>
<p align="left"><strong>public</strong> <strong>class</strong> CollectionTest {</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> <strong>public</strong> <strong>static</strong> <strong>void</strong> main(String []args){</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> Collection c = <strong>new</strong> ArrayList();</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> c.add("hello");</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> c.add(<strong>new</strong> Integer(12));</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> c.add("lsb");</p>
<p align="left">&nbsp;<wbr></p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> System.<em>out</em>.println(c.size());</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> System.<em>out</em>.println(c);</p>
<p align="left">&nbsp;<wbr></p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> }</p>
<p align="left">}</p>
<p align="left">显示结果：</p>
<p align="left">3</p>
<p align="left">[hello, 12, lsb]&nbsp;<wbr></p>
<p align="left">分析：打印 c&nbsp;<wbr> 的时候调用c.toString()方法，显示的是c中的所有的内容并用[]扩住</p>
<img alt="" src="http://www.blogjava.net/images/blogjava_net/lsbwahaha/ccc.jpg" border="0" /><br />
<p>Collection方法 举例二： Iterator</p>
<p align="left"><strong>package</strong> com.Collection;</p>
<p align="left"><strong>import</strong> java.util.Collection;</p>
<p align="left"><strong>import</strong> java.util.HashSet;</p>
<p align="left"><strong>import</strong> java.util.Iterator;</p>
<p align="left"><strong>public</strong> <strong>class</strong> CollectionTest {</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> <strong>public</strong> <strong>static</strong> <strong>void</strong> main(String []args){</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> Collection c = <strong>new</strong> HashSet();</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> c.add("hello");</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> c.add("abc");</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> c.add("lsb");</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr></p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> Iterator iter = c.iterator();</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> <strong>while</strong>(iter.hasNext()){</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> String str = (String)iter.next();</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> System.<em>out</em>.println(str);</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> }</p>
<p>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> }</p>
<p>}</p>
<p>显示结果：</p>
<p align="left">hello</p>
<p align="left">lsb</p>
<p align="left">abc</p>
<p>&nbsp;<wbr></p>
<p>Collection方法 举例二： Set方法</p>
<p align="left"><strong>package</strong> com.Collection;</p>
<p align="left"><strong>import</strong> java.util.Collection;</p>
<p align="left"><strong>import</strong> java.util.HashSet;</p>
<p align="left"><strong>import</strong> java.util.Iterator;</p>
<p align="left">&nbsp;<wbr></p>
<p align="left"><strong>public</strong> <strong>class</strong> CollectionTest {</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> <strong>public</strong> <strong>static</strong> <strong>void</strong> main(String []args){</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> Collection c1 = <strong>new</strong> HashSet();</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> c1.add("a");</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> c1.add("b");</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> c1.add("c");</p>
<p align="left">&nbsp;<wbr></p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> Collection c2 = <strong>new</strong> HashSet();</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> c2.add("a");</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> c2.add("b");</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> c2.add("d");</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr></p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> Collection cn = <strong>new</strong> HashSet(c1);</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> cn.retainAll(c2);&nbsp;<wbr> //取两个集合的交集</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr></p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> Collection cm = <strong>new</strong> HashSet(c1);</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> cm.addAll(c2);</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr></p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> System.<em>out</em>.println(cn);</p>
<p align="left">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> System.<em>out</em>.println(cm);//取两个集合的并集</p>
<p>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> }</p>
<p>}&nbsp;<wbr></p>
<p>显示结果：</p>
<p align="left">[a, b]</p>
<p>[d, a, c, b]</p>
<br />
<br />
<img height="291" alt="" src="http://www.blogjava.net/images/blogjava_net/lsbwahaha/dddd.jpg" width="500" border="0" /><br />
<br />
<br />
<img height="300" alt="" src="http://www.blogjava.net/images/blogjava_net/lsbwahaha/eee.jpg" width="500" border="0" /><br />
<br />
<br />
<p>当对象要比较大小的时候，那要看该对象是否实现了Comparable接口，该接口中只有一个</p>
<p>方法public int compareTo(Object obj);(如果为jdk1.5以上那么参数为T 泛型),这样才可以比较大小与排序</p>
<p>&nbsp;<wbr></p>
<img alt="" src="http://www.blogjava.net/images/blogjava_net/lsbwahaha/fff.jpg" border="0" /><br />
<br />
MAP<br />
<br />
<img alt="" src="http://www.blogjava.net/images/blogjava_net/lsbwahaha/hhh.jpg" border="0" /><br />
<br />
<img src ="http://www.blogjava.net/lsbwahaha/aggbug/264106.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lsbwahaha/" target="_blank">胡鹏</a> 2009-04-06 13:36 <a href="http://www.blogjava.net/lsbwahaha/archive/2009/04/06/264106.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>String.replaceAll</title><link>http://www.blogjava.net/lsbwahaha/archive/2009/04/06/264104.html</link><dc:creator>胡鹏</dc:creator><author>胡鹏</author><pubDate>Mon, 06 Apr 2009 05:26:00 GMT</pubDate><guid>http://www.blogjava.net/lsbwahaha/archive/2009/04/06/264104.html</guid><wfw:comment>http://www.blogjava.net/lsbwahaha/comments/264104.html</wfw:comment><comments>http://www.blogjava.net/lsbwahaha/archive/2009/04/06/264104.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lsbwahaha/comments/commentRss/264104.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lsbwahaha/services/trackbacks/264104.html</trackback:ping><description><![CDATA[<p style="text-align: left" align="left"><span style="font-size: 12pt; font-family: 宋体">下面的程序被设计用来打印它的类文件的名称。如果你不熟悉类字面常量，那么我告诉你<span xml:lang="EN-US">Me.class.getName()</span>将返回<span xml:lang="EN-US">Me</span>类完整的名称，即<span xml:lang="EN-US">&#8220;com.javapuzzlers.Me&#8221;</span>。那么，这个程序会打印出什么呢？ </span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">package com.javapuzzlers;</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">public class Me {</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> public static void main(String[] args){</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> System.out.println(</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> Me.class.getName().</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> replaceAll(".","/") + ".class");</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> }</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">}</span></p>
<p style="text-align: left" align="left"><span style="font-size: 12pt; font-family: 宋体">该程序看起来会获得它的类名（<span xml:lang="EN-US">&#8220;com.javapuzzlers.Me&#8221;</span>），然后用<span xml:lang="EN-US">&#8220;/&#8221;</span>替换掉所有出现的字符串<span xml:lang="EN-US">&#8220;.&#8221;</span>，并在末尾追加字符串<span xml:lang="EN-US">&#8220;.class&#8221;</span>。你可能会认为该程序将打印<span xml:lang="EN-US">com/javapuzzlers/Me.class</span>，该程序正式从这个类文件中被加载的。如果你运行这个程序，就会发现它实际上打印的是<span xml:lang="EN-US">///////////////////.class</span>。到底怎么回事？难道我们是斜杠的受害者吗？</span></p>
<p style="text-align: left" align="left"><span style="font-size: 12pt; font-family: 宋体">问题在于<span xml:lang="EN-US">String.replaceAll</span>接受了一个正则表达式作为它的第一个参数，而并非接受了一个字符序列字面常量。（正则表达式已经被添加到了<span xml:lang="EN-US">Java</span>平台的<span xml:lang="EN-US">1.4</span>版本中。）正则表达式<span xml:lang="EN-US">&#8220;.&#8221;</span>可以匹配任何单个的字符，因此，类名中的每一个字符都被替换成了一个斜杠，进而产生了我们看到的输出。</span></p>
<p style="text-align: left" align="left"><span style="font-size: 12pt; font-family: 宋体">要想只匹配句点符号，在正则表达式中的句点必须在其前面添加一个反斜杠（<span xml:lang="EN-US">"</span>）进行转义。因为反斜杠字符在字面含义的字符串中具有特殊的含义<span xml:lang="EN-US">——</span>它标识转义字符序列的开始<span xml:lang="EN-US">——</span>因此反斜杠自身必须用另一个反斜杠来转义，这样就可以产生一个转义字符序列，它可以在字面含义的字符串中生成一个反斜杠。把这些合在一起，就可以使下面的程序打印出我们所期望的<span xml:lang="EN-US">com/javapuzzlers/Me.class</span>：</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">package com.javapuzzlers;</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">public class Me {</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> public static void main(String[] args){</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> System.out.println(</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> Me.class.getName().replaceAll(""".","/") + ".class");</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> }</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">}</span></p>
<p style="text-align: left" align="left"><span style="font-size: 12pt; font-family: 宋体">为了解决这类问题，<span xml:lang="EN-US">5.0</span>版本提供了新的静态方法<span xml:lang="EN-US">java.util.regex.Pattern.quote</span>。它接受一个字符串作为参数，并可以添加必需的转义字符，它将返回一个正则表达式字符串，该字符串将精确匹配输入的字符串。下面是使用该方法之后的程序：</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">package com.javapuzzlers;</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">import java.util.regex.Pattern;</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">public class Me {</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> public static void main(String[] args){</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> System.out.println(Me.class.getName().</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> replaceAll(Pattern.quote("."),"/") + ".class");</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">&nbsp;<wbr>&nbsp;<wbr>&nbsp;<wbr> }</span></p>
<p style="text-align: left; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" align="left"><span style="font-size: 12pt; color: #3333cc; font-family: 宋体" xml:lang="EN-US">}</span></p>
<p style="text-align: left" align="left"><span style="font-size: 12pt; font-family: 宋体">该程序的另一个问题是：其正确的行为是与平台相关的。并不是所有的文件系统都使用斜杠符号来分隔层次结构的文件名组成部分的。要想获取一个你正在运行的平台上的有效文件名，你应该使用正确的平台相关的分隔符号来代替斜杠符号。这正是下一个谜题所要做的。</span></p>
<img src ="http://www.blogjava.net/lsbwahaha/aggbug/264104.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lsbwahaha/" target="_blank">胡鹏</a> 2009-04-06 13:26 <a href="http://www.blogjava.net/lsbwahaha/archive/2009/04/06/264104.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>