试点总结

  今天是申报期的最后一天。19户纳税户,成功申报14户,1户延期申报,1户税局申报,3户其它方式申报。
  我负责的程序有个小问题,2个BigDecimal对象的比较出了问题。equals和compareTo的作用还是没有弄清楚。查看了一些JDK的源码如下:









  
  public boolean equals(Object x){
    if (!(x instanceof BigDecimal))
      return false;
    BigDecimal xDec = (BigDecimal) x;
    return scale == xDec.scale && intVal.equals(xDec.intVal);
}
  
  public int compareTo(BigDecimal val){
    
    int sigDiff = signum() - val.signum();
    if (sigDiff != 0)
      return (sigDiff > 0 ? 1 : -1);

    
    BigDecimal arg[] = new BigDecimal[2];
    arg[0] = this; arg[1] = val;
    matchScale(arg);
    return arg[0].intVal.compareTo(arg[1].intVal);
}

  JDK的源代码说明得很清楚。equals() 方法认为,两个表示同一个数但换算值不同(例如,2.0 和 2.00)的 BigDecimal 值是不相等的。然而,compareTo() 方法会认为这两个数是相等的,所以在从数值上比较两个 BigDecimal 值时,应该使用 compareTo() 而不是 equals()
  
  BigDecimal还可以避免科学计数,数据显示时有时要用到。

  囫囵吞枣,不求甚解,这是自己要克服的地方。

  数据传输的部分,问题多多,有网络硬件的原因,也有程序方面的原因,最后还是通过手工完成的,好在数据量不大。看来他们回去要好好改一番了。

今天不知道能不能走。

PS
昨天和一个原来同事联系了,交换了blog。原来他现在也转B/S结构了。

posted @ 2004-06-10 08:50  vanuan  阅读(96)  评论(0编辑  收藏  举报