易截截图软件、单文件、免安装、纯绿色、仅160KB

Java和C++位运算对比

为了实现两个数字进行交换,我们通常可以利用位运算来实现
C++程序     swap(int a  ,int b){a^=b^=a^=b;}
JAVA程序    swap(int a, int b){  a^=b;b^=a;a^=b; }或者{ b^=(a^=b) ; a^=b;}
如果JAVA用C++的实现方式则会得到 b得到了a的值,但是a现在的值却不是原来b的值。
这个是因为在C++是编译性语言,JAVA是解释性语言。
在进行处理的时候C++的数是边运算边刷新,保证了中间a ,b的值实时更新,
而JAVA是一次性在我们的表达式中填入了我们原来的值,在中间的运算过程中不能保证本应该改变的数值没有改变,
形成了脏数据。在我们下次要用到a,b的值的时候才进行刷新,但是这个时候已经是脏数据,因此得到的值是错误的。


相关文档:

java读取xml文件的四种方法

xml文件:
Xml代码
<?xml version="1.0" encoding="GB2312"?>  
<RESULT>  
 <VALUE>     
  <NO>A1234</NO>     
  <ADDR>河南省郑州市</ADDR>  
 </VALUE>&nbs ......

JAVA根据XML节点读取XML文件内容

XML文件 book.xml
<book>
<person>
<first>Kiran</first>
<last>Pai</last>
<age>22</age>
</person>
<person>
<first>Bill</first>
<last>Gates</last>
<age>46</age>
</person>
<person>
&l ......

获取java 类的路径

public class Path {
 //get class absolute address
 public String getPath() {
  String classPath = getClass().getName();
  if (classPath.indexOf(".") != -1) {
   classPath = classPath.substring(classPath.lastIndexOf(".") + 1,
     ......

java Socket的怪异之处

怪异之一:
connect(SocketAddress endpoint):这个方法,尝试连接server端,如果连接不上,就抛出IOException异常。如果连接成功了,就继续执行下一步的代码。
怪异之二:
boolean isConnected()  :这个方法的结果仅仅代表这个socket曾经成功连接到了server,但并不表示现在这个时刻它和server仍保持连接状态。
有 ......

关于Java中自定义包的创建

我在学习thinking in Java4 的时候,在创建自定义包的时候,碰到了很多错误,让我郁闷了几天,通过在网上的资料搜索,把包的创建过程给大家详细列出来。
我们以thinking in Java4中的例子为例
创建两个类Vector和List。将编译后的Vector.class和List.class文件放在包net.mindview.simple下(该包位于c:\DOC\JavaT).
//Vec ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号