﻿<?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-日出而作兮勤于外，日落而归兮忙于内-随笔分类-知识收集</title><link>http://www.blogjava.net/cherishchen/category/24524.html</link><description>The art of living is to know when to hold fast and when to let go</description><language>zh-cn</language><lastBuildDate>Tue, 31 Jul 2007 11:42:09 GMT</lastBuildDate><pubDate>Tue, 31 Jul 2007 11:42:09 GMT</pubDate><ttl>60</ttl><item><title>java基础：byte与int</title><link>http://www.blogjava.net/cherishchen/archive/2007/07/31/133588.html</link><dc:creator>凭栏观海</dc:creator><author>凭栏观海</author><pubDate>Tue, 31 Jul 2007 07:54:00 GMT</pubDate><guid>http://www.blogjava.net/cherishchen/archive/2007/07/31/133588.html</guid><wfw:comment>http://www.blogjava.net/cherishchen/comments/133588.html</wfw:comment><comments>http://www.blogjava.net/cherishchen/archive/2007/07/31/133588.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/cherishchen/comments/commentRss/133588.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/cherishchen/services/trackbacks/133588.html</trackback:ping><description><![CDATA[<p>byte与int的区别：</p> <ul> <li>byte uses 1 byte while int uses 4 bytes.  <li>integer literals like "45" are of int not byte.If you want a literal to be a byte, you have to cast it: "(byte)45".  <li>When values are promoted as part of an expression or as parameters to a method call, they may be promoted to int, but never to byte.  <li>Many parts of the Java language used int, but none of them use byte. For example, the length of an array is an int. </li></ul> <p>由于不同的机器对于多字节数据的存储方式不同,可能是 低字节向高字节存储,也可能是从高字节向低字节存储,这样,在 分析网络协议或文件格时,为了解决不同机器上 的字节存储顺序问题,用byte类型来表示数据是合适的。而通常 情况下,由于其表示的数据 范围很小,容易造成溢出,应避免使用。</p> <p><br>/**<br>&nbsp;&nbsp;&nbsp;&nbsp; * Convert&nbsp; an int to a byte array<br>&nbsp;&nbsp;&nbsp;&nbsp; *<br>&nbsp;&nbsp;&nbsp;&nbsp; * @param value int<br>&nbsp;&nbsp;&nbsp;&nbsp; * @return byte[]<br>&nbsp;&nbsp;&nbsp;&nbsp; */<br>public static byte[] intToByteArray(int value) {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; byte[] b = new byte[4];</p> <p>&nbsp;&nbsp;&nbsp;&nbsp; // 使用4个byte表示int<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (int i = 0; i &lt; 4; i++) {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int offset = (b.length - 1 - i) * 8;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; b[i] = (byte) ((value &gt;&gt; offset) &amp; 0xFF);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return b;<br>&nbsp;&nbsp;&nbsp; }</p> <p><br>&nbsp;&nbsp;&nbsp; /**<br>&nbsp;&nbsp;&nbsp;&nbsp; * Convert the byte array to an int starting from the given offset.<br>&nbsp;&nbsp;&nbsp;&nbsp; *<br>&nbsp;&nbsp;&nbsp;&nbsp; * @param b The byte array<br>&nbsp;&nbsp;&nbsp;&nbsp; * @param offset The array offset,如果byte数组长度就是4，则该值为0<br>&nbsp;&nbsp;&nbsp;&nbsp; * @return The integer<br>&nbsp;&nbsp;&nbsp;&nbsp; */<br>&nbsp;&nbsp;&nbsp; public static int byteArrayToInt(byte[] b, int offset) {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int value = 0;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (int i = 0; i &lt; 4; i++) {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int shift = (4 - 1 - i) * 8;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; value += (b[i + offset] &amp; 0x000000FF) &lt;&lt; shift;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return value;<br>&nbsp;&nbsp;&nbsp; }</p><img src ="http://www.blogjava.net/cherishchen/aggbug/133588.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/cherishchen/" target="_blank">凭栏观海</a> 2007-07-31 15:54 <a href="http://www.blogjava.net/cherishchen/archive/2007/07/31/133588.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>内连接、外连接和交叉连接</title><link>http://www.blogjava.net/cherishchen/archive/2007/07/31/133586.html</link><dc:creator>凭栏观海</dc:creator><author>凭栏观海</author><pubDate>Tue, 31 Jul 2007 07:52:00 GMT</pubDate><guid>http://www.blogjava.net/cherishchen/archive/2007/07/31/133586.html</guid><wfw:comment>http://www.blogjava.net/cherishchen/comments/133586.html</wfw:comment><comments>http://www.blogjava.net/cherishchen/archive/2007/07/31/133586.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/cherishchen/comments/commentRss/133586.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/cherishchen/services/trackbacks/133586.html</trackback:ping><description><![CDATA[<p>join_type 指出连接类型，可分为三种：内连接、外连接和交叉连接。</p> <p>内连接(INNER JOIN)使用比较运算符进行表间某(些)列数据的比较操作，并列出这些表中与连接条件相匹配的数据行。根据所使用的比较方式不同，内连接又分为等值连接、自然连接和不等连接三种。</p> <p>外连接分为左外连接(LEFT OUTER JOIN或LEFT JOIN)、右外连接(RIGHT OUTER JOIN或RIGHT JOIN)和全外连接(FULL OUTER JOIN或FULL JOIN)三种。与内连接不同的是，外连接不只列出与连接条件相匹配的行，而是列出左表(左外连接时)、右表(右外连接时)或两个表(全外连接时)中所有符合搜索条件的数据行。</p> <p>交叉连接(CROSS JOIN)没有WHERE 子句，它返回连接表中所有数据行的笛卡尔积，其结果集合中的数据行数等于第一个表中符合查询条件的数据行数乘以第二个表中符合查询条件的数据行数。</p><img src ="http://www.blogjava.net/cherishchen/aggbug/133586.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/cherishchen/" target="_blank">凭栏观海</a> 2007-07-31 15:52 <a href="http://www.blogjava.net/cherishchen/archive/2007/07/31/133586.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>